perf: Fix 'perf sched record' deadlock
perf sched record can deadlock a box should the holder of handle->data->lock take an interrupt, and then attempt to acquire an rq lock held by a CPU trying to acquire the same lock. Disable interrupts. CPU0 CPU1 sched event with rq->lock held grab handle->data->lock spin on handle->data->lock interrupt try to grab rq->lock Reported-by:Li Zefan <lizf@cn.fujitsu.com> Signed-off-by:
Mike Galbraith <efault@gmx.de> Tested-by:
Li Zefan <lizf@cn.fujitsu.com> Signed-off-by:
Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Arnaldo Carvalho de Melo <acme@redhat.com> Cc: Frederic Weisbecker <fweisbec@gmail.com> LKML-Reference: <1269598293.6174.8.camel@marge.simson.net> Signed-off-by:
Ingo Molnar <mingo@elte.hu>
Showing
Please register or sign in to comment