Re: [PATCH bpf-next 2/2] bpf/stackmap: fix A-A deadlock in bpf_get_stack()

2019-10-14 Thread Song Liu
Thanks Peter! > On Oct 14, 2019, at 2:09 AM, Peter Zijlstra wrote: > > On Thu, Oct 10, 2019 at 06:06:14PM +, Alexei Starovoitov wrote: >> On 10/10/19 10:46 AM, Peter Zijlstra wrote: > >>> All of stack_map_get_build_id_offset() is just disguisting games; I did >>> tell you guys how to do

Re: [PATCH bpf-next 2/2] bpf/stackmap: fix A-A deadlock in bpf_get_stack()

2019-10-14 Thread Peter Zijlstra
On Thu, Oct 10, 2019 at 06:06:14PM +, Alexei Starovoitov wrote: > On 10/10/19 10:46 AM, Peter Zijlstra wrote: > > All of stack_map_get_build_id_offset() is just disguisting games; I did > > tell you guys how to do lockless vma lookups a few years ago -- and yes, > > that is invasive core mm

Re: [PATCH bpf-next 2/2] bpf/stackmap: fix A-A deadlock in bpf_get_stack()

2019-10-10 Thread Alexei Starovoitov
On 10/10/19 10:46 AM, Peter Zijlstra wrote: > On Thu, Oct 10, 2019 at 05:19:01PM +, Alexei Starovoitov wrote: >> On 10/10/19 12:36 AM, Peter Zijlstra wrote: >>> On Wed, Oct 09, 2019 at 11:19:16PM -0700, Song Liu wrote: bpf stackmap with build-id lookup (BPF_F_STACK_BUILD_ID) can trigger

Re: [PATCH bpf-next 2/2] bpf/stackmap: fix A-A deadlock in bpf_get_stack()

2019-10-10 Thread Peter Zijlstra
On Thu, Oct 10, 2019 at 05:19:01PM +, Alexei Starovoitov wrote: > On 10/10/19 12:36 AM, Peter Zijlstra wrote: > > On Wed, Oct 09, 2019 at 11:19:16PM -0700, Song Liu wrote: > >> bpf stackmap with build-id lookup (BPF_F_STACK_BUILD_ID) can trigger A-A > >> deadlock on rq_lock(): > >> > >> rcu:

Re: [PATCH bpf-next 2/2] bpf/stackmap: fix A-A deadlock in bpf_get_stack()

2019-10-10 Thread Alexei Starovoitov
On 10/10/19 12:36 AM, Peter Zijlstra wrote: > On Wed, Oct 09, 2019 at 11:19:16PM -0700, Song Liu wrote: >> bpf stackmap with build-id lookup (BPF_F_STACK_BUILD_ID) can trigger A-A >> deadlock on rq_lock(): >> >> rcu: INFO: rcu_sched detected stalls on CPUs/tasks: >> [...] >> Call Trace: >>

Re: [PATCH bpf-next 2/2] bpf/stackmap: fix A-A deadlock in bpf_get_stack()

2019-10-10 Thread Peter Zijlstra
On Wed, Oct 09, 2019 at 11:19:16PM -0700, Song Liu wrote: > bpf stackmap with build-id lookup (BPF_F_STACK_BUILD_ID) can trigger A-A > deadlock on rq_lock(): > > rcu: INFO: rcu_sched detected stalls on CPUs/tasks: > [...] > Call Trace: > try_to_wake_up+0x1ad/0x590 > wake_up_q+0x54/0x80 >

[PATCH bpf-next 2/2] bpf/stackmap: fix A-A deadlock in bpf_get_stack()

2019-10-10 Thread Song Liu
bpf stackmap with build-id lookup (BPF_F_STACK_BUILD_ID) can trigger A-A deadlock on rq_lock(): rcu: INFO: rcu_sched detected stalls on CPUs/tasks: [...] Call Trace: try_to_wake_up+0x1ad/0x590 wake_up_q+0x54/0x80 rwsem_wake+0x8a/0xb0 bpf_get_stack+0x13c/0x150