* perf lockdep trace.
@ 2014-03-29 15:15 Dave Jones
0 siblings, 0 replies; only message in thread
From: Dave Jones @ 2014-03-29 15:15 UTC (permalink / raw)
To: Peter Zijlstra; +Cc: Linux Kernel
Back home, and back to breaking things..
======================================================
[ INFO: possible circular locking dependency detected ]
3.14.0-rc8+ #153 Not tainted
-------------------------------------------------------
trinity-c3/2014 is trying to acquire lock:
(&rq->lock){-.-.-.}, at: [<ffffffff9a0bf75c>] unregister_fair_sched_group+0x5c/0xd0
but task is already holding lock:
(&ctx->lock){-.....}, at: [<ffffffff9a173fe9>] perf_event_exit_task+0x109/0x260
which lock already depends on the new lock.
the existing dependency chain (in reverse order) is:
-> #1 (&ctx->lock){-.....}:
[<ffffffff9a0d1951>] lock_acquire+0x91/0x1c0
[<ffffffff9a7b3bf0>] _raw_spin_lock+0x40/0x80
[<ffffffff9a16f8fc>] __perf_event_task_sched_out+0x11c/0x3c0
[<ffffffff9a0a7b93>] perf_event_task_sched_out+0xb3/0xc0
[<ffffffff9a7ae2d4>] __schedule+0x1e4/0x9c0
[<ffffffff9a7af01e>] schedule_user+0x2e/0xa0
[<ffffffff9a7b4da4>] retint_careful+0x12/0x2e
-> #0 (&rq->lock){-.-.-.}:
[<ffffffff9a0d0dee>] __lock_acquire+0x181e/0x1bd0
[<ffffffff9a0d1951>] lock_acquire+0x91/0x1c0
[<ffffffff9a7b3dfb>] _raw_spin_lock_irqsave+0x4b/0x90
[<ffffffff9a0bf75c>] unregister_fair_sched_group+0x5c/0xd0
[<ffffffff9a0b3cfa>] sched_offline_group+0x3a/0xe0
[<ffffffff9a0c6cc7>] sched_autogroup_exit+0x47/0x60
[<ffffffff9a06b6a9>] __put_task_struct+0xb9/0x130
[<ffffffff9a169c45>] put_ctx+0x55/0x60
[<ffffffff9a17400e>] perf_event_exit_task+0x12e/0x260
[<ffffffff9a07022d>] do_exit+0x33d/0xd40
[<ffffffff9a07207c>] do_group_exit+0x4c/0xc0
[<ffffffff9a072104>] SyS_exit_group+0x14/0x20
[<ffffffff9a7bda64>] tracesys+0xdd/0xe2
other info that might help us debug this:
Possible unsafe locking scenario:
CPU0 CPU1
---- ----
lock(&ctx->lock);
lock(&rq->lock);
lock(&ctx->lock);
lock(&rq->lock);
*** DEADLOCK ***
1 lock held by trinity-c3/2014:
#0: (&ctx->lock){-.....}, at: [<ffffffff9a173fe9>] perf_event_exit_task+0x109/0x260
stack backtrace:
CPU: 3 PID: 2014 Comm: trinity-c3 Not tainted 3.14.0-rc8+ #153
ffffffff9b5efc70 00000000128a256a ffff88009ce09c08 ffffffff9a7a8da2
ffffffff9b5efc70 ffff88009ce09c48 ffffffff9a7a4e66 ffff88009ce09ca0
ffff88023ec94180 0000000000000000 ffff88023ec94148 ffff88023ec94180
Call Trace:
[<ffffffff9a7a8da2>] dump_stack+0x4e/0x7a
[<ffffffff9a7a4e66>] print_circular_bug+0x201/0x20f
[<ffffffff9a0d0dee>] __lock_acquire+0x181e/0x1bd0
[<ffffffff9a7a7119>] ? cmpxchg_double_slab.isra.57+0xdb/0x116
[<ffffffff9a0d1951>] lock_acquire+0x91/0x1c0
[<ffffffff9a0bf75c>] ? unregister_fair_sched_group+0x5c/0xd0
[<ffffffff9a7b3dfb>] _raw_spin_lock_irqsave+0x4b/0x90
[<ffffffff9a0bf75c>] ? unregister_fair_sched_group+0x5c/0xd0
[<ffffffff9a0bf75c>] unregister_fair_sched_group+0x5c/0xd0
[<ffffffff9a0b3cfa>] sched_offline_group+0x3a/0xe0
[<ffffffff9a0c6cc7>] sched_autogroup_exit+0x47/0x60
[<ffffffff9a06b6a9>] __put_task_struct+0xb9/0x130
[<ffffffff9a169c45>] put_ctx+0x55/0x60
[<ffffffff9a17400e>] perf_event_exit_task+0x12e/0x260
[<ffffffff9a7b8e0b>] ? preempt_count_sub+0x6b/0xf0
[<ffffffff9a07022d>] do_exit+0x33d/0xd40
[<ffffffff9a07207c>] do_group_exit+0x4c/0xc0
[<ffffffff9a072104>] SyS_exit_group+0x14/0x20
[<ffffffff9a7bda64>] tracesys+0xdd/0xe2
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2014-03-29 15:15 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-03-29 15:15 perf lockdep trace Dave Jones
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.