|
Bugzilla – Full Text Bug Listing |
| Summary: | Blinking keyboard LEDs after kernel panic considered harmful | ||
|---|---|---|---|
| Product: | [openSUSE] SUSE LINUX 10.0 | Reporter: | Ulrich Windl <Ulrich.Windl> |
| Component: | Kernel | Assignee: | Vojtech Pavlik <vojtech> |
| Status: | RESOLVED WONTFIX | QA Contact: | E-mail List <qa-bugs> |
| Severity: | Normal | ||
| Priority: | P5 - None | CC: | dmueller, suse-beta |
| Version: | Beta 3 | ||
| Target Milestone: | --- | ||
| Hardware: | i686 | ||
| OS: | All | ||
| Whiteboard: | |||
| Found By: | Other | Services Priority: | |
| Business Priority: | Blocker: | --- | |
| Marketing QA Status: | --- | IT Deployment: | --- |
| Attachments: | Screen shot with repeated kernel messages after panic | ||
|
Description
Ulrich Windl
2005-09-06 06:38:09 UTC
Created attachment 48878 [details]
Screen shot with repeated kernel messages after panic
Easy fix is to just diable that useless printk. atkbd/i8042 in general is far too noisy for its own good. The printk is far from useless - it helps debugging cases where something
messes with the hardware without the knowledge of the driver.
The LED blinking code is quite problematic:
* it doesn't disable the keyboard IRQ, causing responses
from the commands it sends to be delivered to the original
driver (which then complains)
* doesn't read the data port, and probably relies on the
IRQ code to empty the incoming buffer.
* definitely relies on the original driver to still handle
keypresses, while causing a stream of command responses
to mix in.
This can never work. There are a few possible ways to fix it:
* Disable the keyboard interrupt in the blink routine and
read the data port. This will work even when IRQs are
dead and won't depend on anything else. Scrollback will
NOT work.
* Move the blinking routine into atkbd.c, and make it rely
on interrupts to deliver the command responses, properly
handling them. Scrollback will work, LEDs will not blink
if IRQs are dead.
IMO the second option is better, since when a panic() happens, interrupts
still work usually, unlike when a hard hang happens.
Andi, what's your thoughts on this?
Doing it interrupt driven would be fine for me. Leaving to you. OK, I'll do that, It is not possible anymore with the new libps2 where atkbd_command() sleeps. I'll take a look again at just getting rid of the messages that atkbd produces when in panic(). I'm afraid this bug can't really be fixed - the only way is to simply disable the panic blink feature if the result of it is too bothersome. Closing as WONTFIX. Could it be made configurable at least (Either via sysconfig or kernel parameter ("boot string"))?
|