Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 8 Sep 2007 16:40:03 +0200
From:      Zahemszky =?ISO-8859-2?Q?G=E1bor?= <Gabor@Zahemszky.HU>
To:        freebsd-current@freebsd.org
Subject:   crash (and the backtrace) in the new if_zyd driver
Message-ID:  <20070908164003.06ffa0dc@Picasso.Zahemszky.HU>

next in thread | raw e-mail | index | archive | help
Hi!

I tried the new if_zyd driver with my new Lutec WLA-54L USB-stick  on a
today-based CURRENT. My machine recognised it correctly when I plugged
in it:

zyd0: <ZyDAS USB2.0 WLAN, class 255/255, rev 2.00/48.10, addr 2> on uhub2
zyd0: HMAC ZD1211B, FW 47.25, RF AL2230, PA 0, address 00:02:72:65:66:00
zyd0: Ethernet address: 00:02:72:65:66:00

But when I "ifconfig zyd0 up" -ed it, the machine crashed. Here
is the backtrace of it:

=3D=3D=3D=3D
 Picasso# kgdb -q kernel.debug /var/crash/vmcore.0
[GDB will not be able to debug user-mode
threads: /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]

Unread portion of the kernel message buffer:
panic: Bad list head 0xc519a6bc first->prev !=3D head
cpuid =3D 1
KDB: enter: panic
Physical memory: 2009 MB
Dumping 76 MB: 61 45 29 13

(kgdb) bt
#0  doadump () at pcpu.h:195
#1  0xc048cd99 in db_fncall (dummy1=3D-444823224, dummy2=3D0, dummy3=3D70,
dummy4=3D0xe57c88b4 "@=F0H=C0")
    at /usr/src/sys/ddb/db_command.c:486
#2  0xc048d305 in db_command_loop ()
at /usr/src/sys/ddb/db_command.c:401
#3  0xc048ea75 in db_trap (type=3D3, code=3D0)
at /usr/src/sys/ddb/db_main.c:222
#4  0xc07776d6 in kdb_trap (type=3D3, code=3D0, tf=3D0xe57c8a5c)
at /usr/src/sys/kern/subr_kdb.c:502
#5  0xc0a0348b in trap (frame=3D0xe57c8a5c)
at /usr/src/sys/i386/i386/trap.c:621
#6  0xc09e8eab in calltrap () at /usr/src/sys/i386/i386/exception.s:139
#7  0xc0777852 in kdb_enter (msg=3D0xc0a9b2f4 "panic") at cpufunc.h:60
#8  0xc0750a04 in panic (fmt=3D0xc0a55da3 "Bad list head %p
first->prev !=3D head")
    at /usr/src/sys/kern/kern_shutdown.c:547
#9  0xc06a30aa in ehci_device_intr_start (xfer=3D0xc55b7e00)
at /usr/src/sys/dev/usb/ehci.c:3266
#10 0xc06a3143 in ehci_device_intr_transfer (xfer=3D0xc55b7e00)
    at /usr/src/sys/dev/usb/ehci.c:3184
#11 0xc06d1d5b in usbd_start_transfer (arg=3D0xc55b7e00, segs=3D0xc5212800,
nseg=3D1, error=3D0)
    at /usr/src/sys/dev/usb/usbdi.c:388
#12 0xc09e6155 in bus_dmamap_load (dmat=3D0xc51e7480, map=3D0xc0c182c0,
buf=3D0xe57c8c0a, buflen=3D0,=20
    callback=3D0xc06d1be0 <usbd_start_transfer>, callback_arg=3D0xc55b7e00,
flags=3D0)
    at /usr/src/sys/i386/i386/busdma_machdep.c:765
#13 0xc06d22a4 in usbd_transfer (xfer=3D0xc55b7e00)
at /usr/src/sys/dev/usb/usbdi.c:312
#14 0xc06b599f in zyd_cmd (sc=3D0xc5ac3000, code=3DVariable "code" is not
available.
) at /usr/src/sys/dev/usb/if_zyd.c:775
#15 0xc06b5d44 in zyd_read32 (sc=3DVariable "sc" is not available.
) at /usr/src/sys/dev/usb/if_zyd.c:819
#16 0xc06b5dc6 in zyd_lock_phy (sc=3D0xc5ac3000)
at /usr/src/sys/dev/usb/if_zyd.c:876
#17 0xc06b7f7a in zyd_set_chan (sc=3D0xc5ac3000, c=3D0xc5ac33fc)
    at /usr/src/sys/dev/usb/if_zyd.c:1716
#18 0xc06b8206 in zyd_scantask (arg=3D0xc5ac3000)
at /usr/src/sys/dev/usb/if_zyd.c:2675
#19 0xc06ce68a in usb_task_thread (arg=3D0xc0bafab4)
at /usr/src/sys/dev/usb/usb.c:483
#20 0xc0732888 in fork_exit (callout=3D0xc06ce5c0 <usb_task_thread>,
arg=3D0xc0bafab4,=20
    frame=3D0xe57c8d38) at /usr/src/sys/kern/kern_fork.c:797
#21 0xc09e8f20 in fork_trampoline ()
at /usr/src/sys/i386/i386/exception.s:205
(kgdb)=20

=3D=3D=3D=3D

By the way, If I boot the machine with the stick pushed in the
USB-slot, I get the next error message:

=3D=3D=3D=3D
zyd0: <ZyDAS USB2.0 WLAN, class 255/255, rev 2.00/48.10, addr 2> on
uhub2 zyd0: setting config no failed
device_attach: zyd0 attach returned 6
=3D=3D=3D=3D

And of course, there won't be a zyd0 interface.

Can anybody help me to use it?

Zahy < Gabor at Zahemszky dot HU >

--=20
#!/bin/ksh
Z=3D'21N16I25C25E30, 40M30E33E25T15U!';IFS=3D' ABCDEFGHIJKLMNOPQRSTUVWXYZ
';set -- $Z;for i;{ [[ $i =3D ? ]]&&print $i&&break;[[ $i
=3D ??? ]]&&j=3D$i&&i=3D${i%?};typeset -i40 i=3D8#$i;print -n ${i#???};[[ "=
$j"
=3D ??? ]]&&print -n "${j#??} "&&j=3D;typeset +i i;};IFS=3D' 0123456789 ';s=
et
-- $Z;for i;{ [[ $i =3D , ]]&&i=3D2;[[ $i =3D ?? ]]||typeset -l i;j=3D"$j
$i";typeset +l i;};print "$j"



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20070908164003.06ffa0dc>