Date: Thu, 20 Mar 2014 21:42:35 +1030 From: "Daniel O'Connor" <doconnor@gsoft.com.au> To: Hans Petter Selasky <hps@bitfrost.no> Cc: freebsd-usb@freebsd.org Subject: Re: USB config SX lock deadlock Message-ID: <C2B2332E-266F-4B21-8ED5-4B68C39A5D69@gsoft.com.au> In-Reply-To: <427679D2-ED43-435A-B362-5F7B89F7AA3A@gsoft.com.au> References: <9783900F-08A1-41FB-81B8-3C9809B82521@gsoft.com.au> <52553000.2010003@bitfrost.no> <A2C6A9D3-1595-41D2-A5C6-B544A3E40058@gsoft.com.au> <52554855.6030404@bitfrost.no> <FFD6BC71-0CAC-41AE-9450-6549F4B0E9C5@gsoft.com.au> <52564953.8080707@bitfrost.no> <7610BC59-ED91-4807-B145-7F7DD2C725E9@gsoft.com.au> <52565BB1.8070506@bitfrost.no> <084BCD21-ADE9-4E60-B637-99EEE1D26389@gsoft.com.au> <427679D2-ED43-435A-B362-5F7B89F7AA3A@gsoft.com.au>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --]
On 20 Mar 2014, at 15:20, Daniel O'Connor <doconnor@gsoft.com.au> wrote:
> On 20 Mar 2014, at 15:10, Daniel O'Connor <doconnor@gsoft.com.au> wrote:
>> #8 0xffffffff8070f932 in usb_ioctl (dev=<value optimized out>, cmd=3222040644, addr=0xfffffe011fab8270 "\001", fflag=<value optimized out>, td=<value optimized out>)
>> at /local0/src/sys/dev/usb/usb_dev.c:1075
>
> Sigh, I just realised this means my driver was still using f_ioctl, not f_ioctl_post.
>
> Sorry, will double check that and test again.
OK, I have checked and it is definitely using the _post version - it gets stuck in..
#0 sched_switch (td=0xfffffe0008f1c490, newtd=0xfffffe0002953490, flags=<value optimized out>) at /local0/src/sys/kern/sched_ule.c:1904
#1 0xffffffff8089e5b0 in mi_switch (flags=260, newtd=0x0) at /local0/src/sys/kern/kern_synch.c:485
#2 0xffffffff808d5274 in sleepq_wait (wchan=0xfffffe000817c050, pri=0) at /local0/src/sys/kern/subr_sleepqueue.c:618
#3 0xffffffff8089d916 in _sx_xlock_hard (sx=0xfffffe000817c050, tid=18446741874836358288, opts=<value optimized out>, file=<value optimized out>,
line=<value optimized out>) at /local0/src/sys/kern/kern_sx.c:678
#4 0xffffffff8089de06 in _sx_xlock (sx=0xfffffe000817c050, opts=0, file=0xffffffff80e4d528 "/local0/src/sys/dev/usb/usb_device.c", line=2651) at sx.h:161
#5 0xffffffff8071245a in usbd_enum_lock (udev=0xfffffe000817c000) at /local0/src/sys/dev/usb/usb_device.c:2651
#6 0xffffffff8070f47a in usb_ref_device (cpd=0xfffffe004f287a80, crd=0xffffff812c284970, need_uref=1) at /local0/src/sys/dev/usb/usb_dev.c:225
#7 0xffffffff8070fa32 in usb_ioctl (dev=<value optimized out>, cmd=3225710660, addr=0xfffffe004eddfd00 "\004", fflag=<value optimized out>, td=<value optimized out>)
at /local0/src/sys/dev/usb/usb_dev.c:1105
#8 0xffffffff8078f01a in devfs_ioctl_f (fp=0xfffffe01109f40a0, com=3225710660, data=<value optimized out>, cred=<value optimized out>, td=0xfffffe0008f1c490)
at /local0/src/sys/fs/devfs/devfs_vnops.c:758
#9 0xffffffff808df946 in kern_ioctl (td=0xfffffe0008f1c490, fd=3, com=3225710660, data=0xfffffe004eddfd00 "\004") at file.h:311
#10 0xffffffff808dfb5d in sys_ioctl (td=0xfffffe0008f1c490, uap=0xffffff812c284b70) at /local0/src/sys/kern/sys_generic.c:696
#11 0xffffffff80c4ee58 in amd64_syscall (td=0xfffffe0008f1c490, traced=0) at subr_syscall.c:135
#12 0xffffffff80c3aa67 in Xfast_syscall () at /local0/src/sys/amd64/amd64/exception.S:391
#13 0x00000008010d8d9c in ?? ()
--
Daniel O'Connor software and network engineer
for Genesis Software - http://www.gsoft.com.au
"The nice thing about standards is that there
are so many of them to choose from."
-- Andrew Tanenbaum
GPG Fingerprint - 5596 B766 97C0 0E94 4347 295E E593 DC20 7B3F CE8C
[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Comment: GPGTools - http://gpgtools.org
iD8DBQFTKs0j5ZPcIHs/zowRAlzjAKCF5O1l/SPmSaJM648OejJv1GozigCeJ6wI
STwh4/C+hF9I8KKfK13LgCI=
=zdNe
-----END PGP SIGNATURE-----
help
Want to link to this message? Use this
URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?C2B2332E-266F-4B21-8ED5-4B68C39A5D69>
