Unsurprisingly, v2.6.19-rc1 still contains the problem I reported for v2.6.18-rc1 under the subject "Linux v2.6.18-rc1: printk delays" and later (unfortunately not before it made it into v2.6.18) tracked down through bisecting to [a0f1ccfd8d37457a6d8a9e01acebeefcdfcc306e] lockdep: do not recurse in printk Problem description: > While X is running, output from printk() appears in syslog (eg. > /var/log/messages) only after a key is pressed on the system keyboard, > even though it is visible with dmesg immediately. (from lkml message <[email protected]> - see that message for further details) The problem did not exist in 2.6.17, so I think it qualifies as a regression. The following naive patch fixes the problem for me, without any apparent ill effects (ie. the menace of lockup never manifested itself): --- a/kernel/printk.c 2006-10-07 00:51:09.000000000 +0200 +++ b/kernel/printk.c 2006-10-07 00:51:41.000000000 +0200 @@ -826,8 +826,7 @@ void release_console_sem(void) * from within the scheduler code, then do not lock * up due to self-recursion: */ - if (!lockdep_internal()) - wake_up_interruptible(&log_wait); + wake_up_interruptible(&log_wait); } } EXPORT_SYMBOL(release_console_sem); But I guess for a proper fix the if() condition should rather be refined a bit than thrown out completely. -- Tilman Schmidt E-Mail: [email protected] Bonn, Germany Diese Nachricht besteht zu 100% aus wiederverwerteten Bits. Ungeoeffnet mindestens haltbar bis: (siehe Rueckseite)
Attachment:
signature.asc
Description: OpenPGP digital signature
- Follow-Ups:
- [patch] lockdep: fix printk recursion logic
- From: Ingo Molnar <[email protected]>
- [patch] lockdep: fix printk recursion logic
- Prev by Date: Re: 2.6.18 Nasty Lockup
- Next by Date: [PATCH 1/6] Char: mxser_new, eliminate tty ldisc deref
- Previous by thread: Re: 2.6.18 Nasty Lockup
- Next by thread: [patch] lockdep: fix printk recursion logic
- Index(es):