summaryrefslogtreecommitdiff
path: root/block
diff options
context:
space:
mode:
authorTetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp>2018-04-06 13:41:18 +0300
committerIngo Molnar <mingo@kernel.org>2018-05-14 10:15:02 +0300
commit0f736a52e4be86476eec1d5adbcbd9c2809ac4b4 (patch)
treed1a995699c621493e9e7e45c0bf64d404b3c26aa /block
parent12e2c41148a9e68bc3b261954961db9d28decf47 (diff)
downloadlinux-0f736a52e4be86476eec1d5adbcbd9c2809ac4b4.tar.xz
locking/lockdep: Use for_each_process_thread() for debug_show_all_locks()
debug_show_all_locks() tries to grab the tasklist_lock for two seconds, but calling while_each_thread() without tasklist_lock held is not safe. See the following commit for more information: 4449a51a7c281602 ("vm_is_stack: use for_each_thread() rather then buggy while_each_thread()") Change debug_show_all_locks() from "do_each_thread()/while_each_thread() with possibility of missing tasklist_lock" to "for_each_process_thread() with RCU", and add a call to touch_all_softlockup_watchdogs() like show_state_filter() does. Signed-off-by: Tetsuo Handa <penguin-kernel@I-love.SAKURA.ne.jp> Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Thomas Gleixner <tglx@linutronix.de> Link: http://lkml.kernel.org/r/1523011279-8206-1-git-send-email-penguin-kernel@I-love.SAKURA.ne.jp Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'block')
0 files changed, 0 insertions, 0 deletions