rue(4). USB problem CURRENT?

Sergey Matveychuk sem at FreeBSD.org
Sun May 14 14:10:58 UTC 2006


I try to run USB modem that works as RTL8150 network card.
When I kldload if_rue and plug the device it's detected fine, MAC
address is right, but the last line claim:

rue0: if_start running deferred for Giant

And when I try to assign an IP address I got a panic:

panic: Trying sleep, but thread marked as sleeping prohibited
KDB: enter: panic
panic: from debugger
Uptime: 5h55m48s
Physical memory: 1014 MB
Dumping 149 MB: 134 118 102 86 70 54 38 22 6

#0  doadump () at pcpu.h:166
166     pcpu.h: No such file or directory.
        in pcpu.h
(kgdb) bt full
#0  doadump () at pcpu.h:166
No locals.
#1  0xc05454aa in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:409
        first_buf_printf = 1
#2  0xc0545818 in panic (fmt=0xc071cb43 "from debugger")
    at /usr/src/sys/kern/kern_shutdown.c:565
        td = (struct thread *) 0xc33d96c0
        bootopt = 260
        newpanic = 0
        ap = 0xe1ece824 "тХЛА╘\203Dю`rVю"
        buf = "Trying sleep, but thread marked as sleeping prohibited",
'\0' <re
peats 201 times>
#3  0xc0448432 in db_panic (addr=-1068076448, have_addr=0, count=-1,
    modif=0xe1ece848 "") at /usr/src/sys/ddb/db_command.c:426
No locals.
#4  0xc04483a9 in db_command (last_cmdp=0xc0791624, cmd_table=0x0)
    at /usr/src/sys/ddb/db_command.c:395
        cmd = (struct command *) 0xc070a500
        t = 0
        modif =
"\000\037yюю\226=цdХЛА\r\000\000\000юP\200ю\r\000\000\000\001\00
0\000\000\204ХЛА\026\003mюЮ\037\177ю\aK\000 DQ\200ю@\t~ю
\037yюx\000\000\000 \03
7yюю\226=ц╗ХЛАA╚DюШ\037sю\220╖Dю\000\000\000\000\n\000\000\000ю\226=ц
\037yю╕\23
5Dю \037yюх\027yюx\000\000\000\004ИЛА"
        addr = -1068076448
        count = -1
        have_addr = 0
        result = 0
#5  0xc04484a5 in db_command_loop () at /usr/src/sys/ddb/db_command.c:446
No locals.
#6  0xc044a6c5 in db_trap (type=3, code=0) at /usr/src/sys/ddb/db_main.c:221
        jb = {{_jb = {-504567548, -504567576, -504567496, 3, -1019373888,
      -1069242778, -504567284, -504567296, -1068065845, 10, -504567496,
      -1068075808}}}
        prev_jb = (void *) 0x0
        bkpt = 0
#7  0xc0567565 in kdb_trap (type=0, code=0, tf=0x0)
    at /usr/src/sys/kern/subr_kdb.c:481
        handled = 0
#8  0xc06efa2a in trap (frame=
      {tf_fs = -1066205176, tf_es = 40, tf_ds = -504627160, tf_edi = 1,
tf_esi =
 -1066185042, tf_ebp = -504567248, tf_isp = -504567276, tf_ebx =
-504567192, tf_
edx = 0, tf_ecx = -1056878592, tf_eax = 18, tf_trapno = 3, tf_err = 0,
tf_eip =
-1068076448, tf_cs = 32, tf_eflags = 524418, tf_esp = -1066187795, tf_ss
= -1066
197304}) at /usr/src/sys/i386/i386/trap.c:622
        td = (struct thread *) 0xc33d96c0
        p = (struct proc *) 0xc33d8b04
        i = 0
        ucode = 0
        type = 3
        code = 0
        addr = 0
        eva = 0
        ksi = {ksi_link = {tqe_next = 0x0, tqe_prev = 0xc07343f9},
ksi_info = {
    si_signo = -1066197299, si_errno = 4291221, si_code = -504567376,
    si_pid = -1066196826, si_uid = 3229181622, si_status = -2147483648,
    si_addr = 0x369e99, si_value = {sival_int = 0, sival_ptr = 0x0},
    _reason = {_fault = {_trapno = 0}, _timer = {_timerid = 0, _overrun
= 1},
      _mesgq = {_mqd = 0}, _poll = {_band = 0}, __spare__ = {__spare1__ = 0,
        __spare2__ = {1, -1019373888, 5000, 0, -504567332, -1068114655,
          -1065786288}}}}, ksi_flags = 2, ksi_sigq = 0xc0733719}
#9  0xc06de34a in calltrap () at /usr/src/sys/i386/i386/exception.s:138
No locals.
#10 0xc0567260 in kdb_enter (msg=0x12 <Address 0x12 out of bounds>)
    at cpufunc.h:60
No locals.
#11 0xc05457a5 in panic (
    fmt=0xc0734eae "Trying sleep, but thread marked as sleeping prohibited")
    at /usr/src/sys/kern/kern_shutdown.c:549
        td = (struct thread *) 0xc33d96c0
        bootopt = 256
        newpanic = 1
        ap = 0xe1ecea68 "\001"
        buf = "Trying sleep, but thread marked as sleeping prohibited",
'\0' <re
peats 201 times>
#12 0xc056e0d5 in sleepq_add (wchan=0xc49df600, lock=0x0,
    wmesg=0x12 <Address 0x12 out of bounds>, flags=0)
    at /usr/src/sys/kern/subr_sleepqueue.c:278
        sc = (struct sleepqueue_chain *) 0xc0799708
        sq = (struct sleepqueue *) 0xc1015000
        td = (struct thread *) 0xc33d96c0
#13 0xc054d8b2 in msleep (ident=0xc49df600, mtx=0x0, priority=76,
    wmesg=0xc0729b2e "usbsyn", timo=0) at /usr/src/sys/kern/kern_synch.c:191
        _giantcnt = 1
        Giant__wf = 0xc073315d "/usr/src/sys/kern/kern_timeout.c"
        Giant__wl = 240
        td = (struct thread *) 0xc33d96c0
        p = (struct proc *) 0x1
        catch = 0
        rval = 0
        flags = 0
        mtx__wf = 0x1 <Address 0x1 out of bounds>
        mtx__wl = -996280832
#14 0xc04e122c in usbd_transfer (xfer=0xc49df600)
    at /usr/src/sys/dev/usb/usbdi.c:344
        pipe = 0xc4b54100
        dmap = (usb_dma_t *) 0xc49df63c
        err = USBD_IN_PROGRESS
        size = 1
#15 0xc04e125c in usbd_sync_transfer (xfer=0x12)
    at /usr/src/sys/dev/usb/usbdi.c:355
No locals.
#16 0xc04e1c5d in usbd_do_request_flags_pipe (dev=0xc496f280, pipe=0x12,
    req=0xe1eceb90, data=0x12, flags=0, actlen=0x0, timeout=18)
    at /usr/src/sys/dev/usb/usbdi.c:982
        xfer = 0xc49df600
        err = 3790400400
#17 0xc04e1bdc in usbd_do_request_flags (dev=0xc1015000, req=0x12,
data=0x12,
    flags=0, actlen=0x12, timo=18) at /usr/src/sys/dev/usb/usbdi.c:953
No locals.
#18 0xc04e1b97 in usbd_do_request (dev=0x12, req=0x12, data=0x12)
    at /usr/src/sys/dev/usb/usbdi.c:945
No locals.
#19 0xc54a388d in ?? ()
No symbol table info available.
#20 0xc496f280 in ?? ()
No symbol table info available.
#21 0xe1eceb90 in ?? ()
No symbol table info available.
#22 0xe1ecebb7 in ?? ()
No symbol table info available.
#23 0x013705c0 in ?? ()
No symbol table info available.
#24 0x00010000 in ?? ()
No symbol table info available.
#25 0x00000137 in ?? ()
No symbol table info available.
#26 0xe1ecebb8 in ?? ()
No symbol table info available.
#27 0xc54a399c in ?? ()
No symbol table info available.
#28 0xc4eec800 in ?? ()
No symbol table info available.
#29 0x00000137 in ?? ()
No symbol table info available.
#30 0xe1ecebb7 in ?? ()
No symbol table info available.
#31 0x00000001 in ?? ()
No symbol table info available.
#32 0x00733719 in ?? ()
No symbol table info available.
#33 0xe1ecebcc in ?? ()
No symbol table info available.
#34 0xc54a3b3f in ?? ()
No symbol table info available.
#35 0xc4eec800 in ?? ()
No symbol table info available.
#36 0x00000137 in ?? ()
No symbol table info available.
#37 0xc4dd3000 in ?? ()
No symbol table info available.
#38 0xe1ecebec in ?? ()
No symbol table info available.
#39 0xc0489c34 in miibus_readreg (dev=0x12, phy=311, reg=-504566857)
    at miibus_if.h:25
No locals.
Previous frame inner to this frame (corrupt stack?)
(kgdb) quit

-- 
Dixi.
Sem.


More information about the freebsd-usb mailing list