On Friday 24 July 2009 14:39:45 Andriy Gapon wrote: > Maybe Giant asserts in ukbd are not needed? Option 1) They are needed as long as ukbd is not allowed to lock Giant when it needs it. Like when you are at the console and have Scroll-Lock pressed, and then something is printed, then printf() will directly call into the keyboard layer, to disable scroll lock and its associated LED. Locking Giant from a sub-routine of printf() is not smart and leads to LOR's. Having an AT-keyboard you can always peek or poke a port directly, but an USB-keyboard is quite more advanced. And like some other guy pointed out recently: In some cases the keyboard gets enabled without Giant locked, even though that is a requirement. Option 2) Some work is needed to get the non-USB part of the statemachine in ukbd out of Giant. I'm not a kbdmux expert either. I don't have the full overview from where the variables in the ukbd's keyboard state can be read and written, and which fields in the ukbd's keyboard state needs to remain Giant locked due to kbdmux and kbd. That's basically what is stopping me from converting ukbd free of Giant. Option 3) Assume that the kernel never panics :-) --HPSReceived on Fri Jul 24 2009 - 11:52:22 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:52 UTC