On Thu, 19 Nov 2015, Ioan-Adrian Ratiu wrote:
First part of lockdep report:
http://imgur.com/clLsCWe
Second part:
http://imgur.com/Wa2PzRl
Here are some printk's of mine while reproducing + debugging the issue:
http://imgur.com/SETOHT7
So the real problem is that Intuos driver is calling hid_hw_request()
(which tries to grab the lock in usbhid_submit_report()) while handling
the CTRL IRQ (lock gets acquired there).
So the proper way to fix seems to be delaying the scheduling of the
proximity read event in wacom_intuos_inout() to workqueue.
I'll continue to research this more in depth, but progress is slow
because I don't have much time, I'm doing this in my spare time because
it's my girlfriend's tablet.
Oh, now I understand the level of severity of this bug! :-)
Thanks,
--
Jiri Kosina
SUSE Labs