Home
last modified time | relevance | path

Searched hist:c196adf87514560f867492978ae350d4bbced0bd (Results 1 – 1 of 1) sorted by relevance

/linux/drivers/hid/usbhid/
H A Dusbkbd.cdiff c196adf87514560f867492978ae350d4bbced0bd Wed Nov 23 11:25:34 CET 2011 Willem Penninckx <willem.penninckx@cs.kuleuven.be> HID: usbkbd: synchronize LED URB submission

usb_kbd_event() and usb_kbd_led() can be called concurrently, but they are not
synchronized. They both readwrite kbd->leds, and usb_kbd_event() originally just
checked the URB status field, while urb.h states that "It [status field] should
not be examined before the URB is returned to the completion handler."

To fix this unsynchronized behavior, this patch introduces a boolean
representing whether the URB is submitted, and a spinlock.

Signed-off-by: Willem Penninckx <willem.penninckx@cs.kuleuven.be>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>