Re: 3.17-rc1: leds blink workqueue causes sleeping BUGs

From: Kari Suvanto <hidden>
Date: 2014-09-22 07:43:00
Also in: linux-leds, lkml

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 
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help