[xhci] __list_add triggers BUG while processing xhci_queue_slot_control

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello,

I got the following stack trace when booting a 3.19.4 kernel (with
grsecurity enabled, but this should not be related here), possible at
the moment when the xhci driver was initially processing the USB devices:

kernel BUG at lib/list_debug.c:39
Workqueue;: usb_hub_wq hub_event

__list_add
queue_command
xhci_queue_slot_control
xhci_alloc_dev
usb_alloc_dev
hub_event
process_one_work

The complete screenshot with all information can be found at
http://picpaste.com/pics/IMG_20150805_072836-LAhi91tT.1439187381.jpg

The system is a Lenovo T450s docked within a Lenovo Ultra Dock docking
station. Attached are two external USB3 hubs (no devices attached
there). USB devices attached during boot were a keyboard and a mouse,
both attached to the docking unit. The error was not yet reproducible.

The error seems to indicate that the xhci->cmd_list got modified while
the list_add operation was taking place. I already checked the xhci code
and apart from some shutdown handling didn't find any place, were the
list was modified without taking the xhci->lock.

Any idea, what might be the concurrent user causing this problem?

Thanks for any input,

	Torsten
--
To unsubscribe from this list: send the line "unsubscribe linux-usb" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Media]     [Linux Input]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [Old Linux USB Devel Archive]

  Powered by Linux