USB config SX lock deadlock
Daniel O'Connor
doconnor at gsoft.com.au
Thu Mar 20 11:13:03 UTC 2014
On 20 Mar 2014, at 15:20, Daniel O'Connor <doconnor at gsoft.com.au> wrote:
> On 20 Mar 2014, at 15:10, Daniel O'Connor <doconnor at 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
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: Message signed with OpenPGP using GPGMail
URL: <http://lists.freebsd.org/pipermail/freebsd-usb/attachments/20140320/503786b2/attachment.sig>
More information about the freebsd-usb
mailing list