diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-15 13:09:54 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2008-04-15 13:09:54 -0700 |
commit | 093a07e2fdfaddab7fc7d4adc76cc569c86603d7 (patch) | |
tree | baaa4d86680347a0687ebfbe133d7b253b88102c /arch/parisc/kernel/signal.c | |
parent | 0de19a456cb59106420864927fdec152310f70b6 (diff) |
Fix locking bug in "acquire_console_semaphore_for_printk()"
When I cleaned up printk() and split up the printk locking logic in
commit 266c2e0abeca649fa6667a1a427ad1da507c6375 ("Make printk() console
semaphore accesses sensible") I had incorrectly moved the call to
have_callable_console() outside of the console semaphore.
That was buggy. The console semaphore protects the console_drivers list
that is used by have_callable_console().
Thanks go to Bongani Hlope who saw this as a hang on shutdown and reboot
and bisected the bug to the right commit, and tested this patch. See
http://lkml.org/lkml/2008/4/11/315
Bisected-and-tested-by: Bongani Hlope <bonganilinux@mweb.co.za>
Cc: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'arch/parisc/kernel/signal.c')
0 files changed, 0 insertions, 0 deletions