Date: Tue, 24 Oct 2000 18:44:56 -0400 From: "Brian F. Feldman" <green@FreeBSD.org> To: hackers@FreeBSD.org Cc: n_hibma@FreeBSD.org Subject: Anyone have uhid working and stable? Message-ID: <200010242244.e9OMiv503269@green.dyndns.org>
next in thread | raw e-mail | index | archive | help
After just buying a device and attempting to use uhid for a while, I got = a = nice little crash. I can't figure out what's going on, because the clist= = queue seems to be corrupted. Is it valid for a clist to have a non-zero = c_cc and NULL c_cf? I wonder if this is just me, because it seems to hav= e = been provoked with little effort. Maybe I'm missing something as to where exactly the crash occurs -- the l= ine = of code is wrong, and I don't exactly see where the bcopy is coming from = (other than probably q_to_b or uiomove, but I don't know how they can't s= how = up on the stack trace). (kgdb) bt #0 dumpsys () at ../../kern/kern_shutdown.c:461 #1 0xc016873f in boot (howto=3D0x100) at ../../kern/kern_shutdown.c:302 #2 0xc0168ae1 in panic (fmt=3D0xc029198f "page fault") at ../../kern/ker= n_shutdown.c:550 #3 0xc024ef2a in trap_fatal (frame=3D0xd02f6cac, eva=3D0x0) at ../../i38= 6/i386/trap.c:951 #4 0xc024ebdd in trap_pfault (frame=3D0xd02f6cac, usermode=3D0x0, eva=3D= 0x0) at ../../i386/i386/trap.c:844 #5 0xc024e77f in trap (frame=3D{tf_fs =3D 0x10, tf_es =3D 0x10, tf_ds =3D= 0x10, tf_edi =3D 0xd02f6d3c, tf_esi =3D 0x0, = tf_ebp =3D 0xd02f6d1c, tf_isp =3D 0xd02f6cd8, tf_ebx =3D 0x4, tf_ed= x =3D 0x80, tf_ecx =3D 0x1, tf_eax =3D 0xd02f6d3c, = tf_trapno =3D 0xc, tf_err =3D 0x0, tf_eip =3D 0xc024d34a, tf_cs =3D= 0x8, tf_eflags =3D 0x10212, tf_esp =3D 0x0, = tf_ss =3D 0xc14f6bb4}) at ../../i386/i386/trap.c:443 #6 0xc024d34a in generic_bcopy () #7 0xc18695e9 in uhid_do_read (sc=3D0xc14f6b80, uio=3D0xd02f6edc, flag=3D= 0x7f0010) at /usr/src/sys/modules/uhid/../../dev/usb/uhid.c:504 #8 0xc1869649 in uhidread () at /usr/src/sys/modules/uhid/../../dev/usb/= uhid.c:513 #9 0xc01a5e29 in spec_read (ap=3D0xd02f6e6c) at ../../miscfs/specfs/spec= _vnops.c:261 #10 0xc02144f8 in ufsspec_read (ap=3D0xd02f6e6c) at ../../ufs/ufs/ufs_vno= ps.c:1802 #11 0xc02149f9 in ufs_vnoperatespec (ap=3D0xd02f6e6c) at ../../ufs/ufs/uf= s_vnops.c:2281 #12 0xc01a2ef4 in vn_read (fp=3D0xc105d080, uio=3D0xd02f6edc, cred=3D0xc1= 1e1280, flags=3D0x0, p=3D0xc7e65380) at vnode_if.h:334 #13 0xc017a1f4 in dofileread (p=3D0xc7e65380, fp=3D0xc105d080, fd=3D0x6, = buf=3D0x8baf180, nbyte=3D0x4, = offset=3D0xffffffffffffffff, flags=3D0x0) at ../../sys/file.h:141 #14 0xc017a0db in read (p=3D0xc7e65380, uap=3D0xd02f6f80) at ../../kern/s= ys_generic.c:110 #15 0xc024f1dd in syscall2 (frame=3D{tf_fs =3D 0x2f, tf_es =3D 0x2f, tf_d= s =3D 0x2f, tf_edi =3D 0x0, tf_esi =3D 0x8bac6e4, = tf_ebp =3D 0x0, tf_isp =3D 0xd02f6fd4, tf_ebx =3D 0x8bac6ec, tf_edx= =3D 0x140, tf_ecx =3D 0x8, tf_eax =3D 0x3, = tf_trapno =3D 0x16, tf_err =3D 0x2, tf_eip =3D 0x28846858, tf_cs =3D= 0x1f, tf_eflags =3D 0x256, tf_esp =3D 0xbfbff6a4, = tf_ss =3D 0x2f}) at ../../i386/i386/trap.c:1150 (kgdb) p ((struct uhid_softc *)$foo->softc)->sc_q = $18 =3D { c_cc =3D 0x1c, = c_cbcount =3D 0x0, = c_cbmax =3D 0xb, = c_cbreserved =3D 0xb, = c_cf =3D 0x0, = c_cl =3D 0xc1178fb0 "=E5=DAD6\t=C4=E6\037zk\036=F3=C4I=E4!\nX=C2\022\21= 2K=A7\233\207=F2S\217\203" } -- Brian Fundakowski Feldman \ FreeBSD: The Power to Serve! / green@FreeBSD.org `------------------------------' To Unsubscribe: send mail to majordomo@FreeBSD.org with "unsubscribe freebsd-hackers" in the body of the message
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200010242244.e9OMiv503269>