From owner-freebsd-usb@FreeBSD.ORG Sun Nov 14 21:27:04 2010 Return-Path: Delivered-To: freebsd-usb@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 28F70106564A for ; Sun, 14 Nov 2010 21:27:04 +0000 (UTC) (envelope-from hselasky@c2i.net) Received: from swip.net (mailfe07.swip.net [212.247.154.193]) by mx1.freebsd.org (Postfix) with ESMTP id B086E8FC15 for ; Sun, 14 Nov 2010 21:27:03 +0000 (UTC) X-Cloudmark-Score: 0.000000 [] X-Cloudmark-Analysis: v=1.1 cv=vDUu4pv7IaR8DTRzVjjCCOYxZ4yAx/7/dG3VXczAVmg= c=1 sm=1 a=aFhn9fKtkHwA:10 a=8nJEP1OIZ-IA:10 a=CL8lFSKtTFcA:10 a=i9M/sDlu2rpZ9XS819oYzg==:17 a=fa7RAxo4OQZFlvMMwQkA:9 a=v-Ctrk1zKviOBJAqJSwA:7 a=mJD5eabTmCjXlknfzRLU7CHI-owA:4 a=wPNLvfGTeEIA:10 a=i9M/sDlu2rpZ9XS819oYzg==:117 Received: from [188.126.198.129] (account mc467741@c2i.net HELO laptop002.hselasky.homeunix.org) by mailfe07.swip.net (CommuniGate Pro SMTP 5.2.19) with ESMTPA id 48921851; Sun, 14 Nov 2010 22:27:02 +0100 From: Hans Petter Selasky To: freebsd-usb@freebsd.org Date: Sun, 14 Nov 2010 22:28:02 +0100 User-Agent: KMail/1.13.5 (FreeBSD/8.1-STABLE; KDE/4.4.5; amd64; ; ) References: <201011142119.46709.bruce@cran.org.uk> In-Reply-To: <201011142119.46709.bruce@cran.org.uk> X-Face: +~\`s("[*|O,="7?X@L.elg*F"OA\I/3%^p8g?ab%RN'(; _IjlA: hGE..Ew, XAQ*o#\/M~SC=S1-f9{EzRfT'|Hhll5Q]ha5Bt-s|oTlKMusi:1e[wJl}kd}GR Z0adGx-x_0zGbZj'e(Y[(UNle~)8CQWXW@:DX+9)_YlB[tIccCPN$7/L' MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201011142228.02765.hselasky@c2i.net> Cc: bzeeb+freebsd+lor@zabbadoz.net Subject: Re: LOR: USB config SX lock vs. USB suspend and resume SX lock X-BeenThere: freebsd-usb@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: FreeBSD support for USB List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Sun, 14 Nov 2010 21:27:04 -0000 On Sunday 14 November 2010 22:19:46 Bruce Cran wrote: > I'm running -CURRENT on a laptop which has a wireless switch. > When I boot with it enabled and then switch it off, the following > LOR gets logged: Can you verify that this LOR is real, and that it is not due to SX-locks having similar names? --HPS > > lock order reversal: > 1st 0xffffff000466d070 USB config SX lock (USB config SX lock) @ > /usr/src/head/sys/dev/usb/usb_device.c:2671 2nd 0xffffff000466d090 USB > suspend and resume SX lock (USB suspend and resume SX lock) @ > /usr/src/head/sys/dev/usb/usb_device.c:2672 3rd 0xffffff0004501870 USB > config SX lock (USB config SX lock) @ > /usr/src/head/sys/dev/usb/usb_device.c:2671 KDB: stack backtrace: > db_trace_self_wrapper() at db_trace_self_wrapper+0x2a > kdb_backtrace() at kdb_backtrace+0x37 > _witness_debugger() at _witness_debugger+0x2e > witness_checkorder() at witness_checkorder+0x807 > _sx_xlock() at _sx_xlock+0x55 > usbd_enum_lock() at usbd_enum_lock+0x2a > usb_unconfigure() at usb_unconfigure+0x16a > usb_free_device() at usb_free_device+0x184 > uhub_detach() at uhub_detach+0x6a > device_detach() at device_detach+0xa4 > usb_detach_device() at usb_detach_device+0x78 > usb_unconfigure() at usb_unconfigure+0x34 > usb_free_device() at usb_free_device+0x184 > uhub_explore() at uhub_explore+0x18e > usb_bus_explore() at usb_bus_explore+0xc1 > usb_process() at usb_process+0xbb > fork_exit() at fork_exit+0x12a > fork_trampoline() at fork_trampoline+0xe > --- trap 0, rip = 0, rsp = 0xffffff81238cecf0, rbp = 0 --- > > During boot I get the following errors logged: > > uhub_reattach_port: port 6 reset failed, error=USB_ERR_TIMEOUT > uhub_reattach_port: device problem (USB_ERR_TIMEOUT), disabling port 6 > uhub_reattach_port: port 2 reset failed, error=USB_ERR_TIMEOUT > uhub_reattach_port: device problem (USB_ERR_TIMEOUT), disabling port 2 > > Before the LOR, some devices get disconnected: > > ugen5.2: at usbus5 (disconnected) > uhub7: at uhub5, port 2, addr 2 (disconnected) > ugen5.3: at usbus5 (disconnected) > > And after, more: > > ugen5.4: at usbus5 (disconnected) > ukbd0: at uhub7, port 2, addr 4 (disconnected) > ugen5.5: at usbus5 (disconnected) > ums0: at uhub7, port 3, addr 5 (disconnected)