USB newbus livelock

From: Andrew Thompson <andy_at_fud.org.nz>
Date: Tue, 18 Aug 2009 06:04:26 -0700
Hi Attilio,


At the moment usb controller modules can not be unloaded due to a
newbus locking problem, roughly...

# kldunload ehci
syscall()
driver_module_handler()
  --> newbus xlock (subr_bus.c:4127)
usb_detach()
usb_proc_mwait()  <- wakeup, detach and drain the usb thread


[usb thread, detaching...]
usb_bus_detach()
 --> newbus xlock  (livelock, the kldunload process has this)

Hans has made some changes WRT this, perforce changes 167093 and
possibly 167087. Do you want to review this or maybe go for a similar
fix?


cheers,
Andrew
Received on Tue Aug 18 2009 - 11:04:28 UTC

This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:54 UTC