Messages in this thread | | | Date | Mon, 22 Sep 2014 10:42:54 +0300 | From | Kari Suvanto <> | Subject | Re: 3.17-rc1: leds blink workqueue causes sleeping BUGs |
| |
>Ew. I'll have a look.
sorry, sending again, first one had html in it..
Any update on this one?
I'm seeing this in every boot. I patched this by changing led_trigger_register and led_trigger_register_simple as macros which creates a static lock_class_key like this: -extern int led_trigger_register(struct led_trigger *trigger); + +extern int __led_trigger_register_key(struct led_trigger *trigger, + struct lock_class_key *key); +#ifdef CONFIG_LOCKDEP +#define led_trigger_register(trigger) \ +({ \ + static struct lock_class_key __key; \ + \ + __led_trigger_register_key(trigger, &__key); \ +}) +#else +#define led_trigger_register(trigger) \ + __led_trigger_register_key(trigger, NULL) +#endif +
But should every trigger has own key? With my patch all the triggers from vt/keyboard.c are using the same key. Is that a problem? I have not seen any problems with that patch and after that I can see this https://lkml.org/lkml/2014/9/5/462.
-Kari
| |