On 20 July 2009 01:52, Juergen Lock <nox@jelal.kn-bremen.de>
wrote:> Hi!
>
> ?So I wanted to use an usb key on this freshly updated 7-stable box,
> and got a panic just after plugging it in: :(
>
> zsh triton# kgdb /boot/kernel/kernel.symbols /var/crash/vmcore.9
> ...
> umass0: <OCZ Technology ATV, class 0/0, rev 2.00/11.00, addr 2> on
uhub5
> umass0:1:0:-1: Attached to scbus1
>
>
> Fatal trap 12: page fault while in kernel mode
> cpuid = 0; apic id = 00
> fault virtual address ? = 0x290
> fault code ? ? ? ? ? ? ?= supervisor read data, page not present
> instruction pointer ? ? = 0x8:0xffffffff804d67d4
> stack pointer ? ? ? ? ? = 0x10:0xffffff8085487da0
> frame pointer ? ? ? ? ? = 0x10:0xffffff8085487de0
> code segment ? ? ? ? ? ?= base 0x0, limit 0xfffff, type 0x1b
> ? ? ? ? ? ? ? ? ? ? ? ?= DPL 0, pres 1, long 1, def32 0, gran 1
> processor eflags ? ? ? ?= interrupt enabled, resume, IOPL = 0
> current process ? ? ? ? = 38 (usb5)
> trap number ? ? ? ? ? ? = 12
> panic: page fault
> cpuid = 0
> KDB: stack backtrace:
> db_trace_self_wrapper() at db_trace_self_wrapper+0x2a
> panic() at panic+0x182
> trap_fatal() at trap_fatal+0x2b3
> trap_pfault() at trap_pfault+0x294
> trap() at trap+0x312
> calltrap() at calltrap+0x8
> --- trap 0xc, rip = 0xffffffff804d67d4, rsp = 0xffffff8085487da0, rbp =
0xffffff8085487de0 ---
> usb_transfer_complete() at usb_transfer_complete+0x1d4
> bus_dmamap_load() at bus_dmamap_load+0x314
> usbd_transfer() at usbd_transfer+0xee
> usbd_do_request_flags_pipe() at usbd_do_request_flags_pipe+0x8f
> usbd_do_request_flags() at usbd_do_request_flags+0x25
> usbd_get_string_desc() at usbd_get_string_desc+0x9b
> usbd_get_string() at usbd_get_string+0x83
> uhub_child_pnpinfo_str() at uhub_child_pnpinfo_str+0xd9
> devaddq() at devaddq+0xd5
> device_attach() at device_attach+0x13a
> usbd_new_device() at usbd_new_device+0x821
> uhub_explore() at uhub_explore+0x1bd
> usb_discover() at usb_discover+0x38
> usb_event_thread() at usb_event_thread+0x8a
> fork_exit() at fork_exit+0x11f
> fork_trampoline() at fork_trampoline+0xe
> --- trap 0, rip = 0, rsp = 0xffffff8085488d30, rbp = 0 ---
> Uptime: 1m1s
> Physical memory: 8176 MB
> Dumping 4605 MB: 4590 4574 4558 4542 4526 4510 4494 4478 4462 4446 4430
4414 4398 4382 4366 4350 4334 4318 4302 4286 4270 4254 4238 4222 4206 4190 4174
4158 4142 4126 4110 4094 4078 4062 4046 4030 4014 3998 3982 3966 3950 3934 3918
3902 3886 3870 3854 3838 3822 3806 3790 3774 3758 3742 3726 3710 3694 3678 3662
3646 3630 3614 3598 3582 3566 3550 3534 3518 3502 3486 3470 3454 3438 3422 3406
3390 3374 3358 3342 3326 3310 3294 3278 3262 3246 3230 3214 3198 3182 3166 3150
3134 3118 3102 3086 3070 3054 3038 3022 3006 2990 2974 2958 2942 2926 2910 2894
2878 2862 2846 2830 2814 2798 2782 2766 2750 2734 2718 2702 2686 2670 2654 2638
2622 2606 2590 2574 2558 2542 2526 2510 2494 2478 2462 2446 2430 2414 2398 2382
2366 2350 2334 2318 2302 2286 2270 2254 2238 2222 2206 2190 2174 2158 2142 2126
2110 2094 2078 2062 2046 2030 2014 1998 1982 1966 1950 1934 1918 1902 1886 1870
1854 1838 1822 1806 1790 1774 1758 1742 1726 1710 1694 1678 1662 1646 1630 1614
1598 1582 1566 1550 1534 1518 1502 1486 1470 1454 1438 1422 1406 1390 1374 1358
1342 1326 1310 1294 1278 1262 1246 1230 1214 1198 1182 1166 1150 1134 1118 1102
1086 1070 1054 1038 1022 1006 990 974 958 942 926 910 894 878 862 846 830 814
798 782 766 750 734 718 702 686 670 654 638 622 606 590 574 558 542 526 510 494
478 462 446 430 414 398 382 366 350 334 318 302 286 270 254 238 222 206 190 174
158 142 126 110 94 78 62 46 30 14
>
> Reading symbols from /boot/kernel/umass.ko...Reading symbols from
/boot/kernel/umass.ko.symbols...done.
> done.
> Loaded symbols for /boot/kernel/umass.ko
> #0 ?doadump () at pcpu.h:195
> 195 ? ? ? ? ? ? __asm __volatile("movq %%gs:0,%0" :
"=r" (td));
> (kgdb) bt
> #0 ?doadump () at pcpu.h:195
> #1 ?0xffffffff80567248 in boot (howto=260)
> ? ?at /usr/home/nox/src72s2/src/sys/kern/kern_shutdown.c:418
> #2 ?0xffffffff805676ac in panic (fmt=Variable "fmt" is not
available.
> )
> ? ?at /usr/home/nox/src72s2/src/sys/kern/kern_shutdown.c:574
> #3 ?0xffffffff8082f953 in trap_fatal (frame=0xc, eva=Variable
"eva" is not available.
> )
> ? ?at /usr/home/nox/src72s2/src/sys/amd64/amd64/trap.c:756
> #4 ?0xffffffff8082fd34 in trap_pfault (frame=0xffffff8085487cf0,
usermode=0)
> ? ?at /usr/home/nox/src72s2/src/sys/amd64/amd64/trap.c:672
> #5 ?0xffffffff808306e2 in trap (frame=0xffffff8085487cf0)
> ? ?at /usr/home/nox/src72s2/src/sys/amd64/amd64/trap.c:443
> #6 ?0xffffffff80819cce in calltrap ()
> ? ?at /usr/home/nox/src72s2/src/sys/amd64/amd64/exception.S:218
> #7 ?0xffffffff804d67d4 in usb_transfer_complete (xfer=0xffffff00046b1000)
> ? ?at /usr/home/nox/src72s2/src/sys/dev/usb/usbdi.c:949
> #8 ?0xffffffff80815bf4 in bus_dmamap_load (dmat=0xffffff0004499880,
> ? ?map=0xffffff000478ec00, buf=0xffffff8085487fe0, buflen=0,
> ? ?callback=0xffffffff804d68b0 <usbd_start_transfer>,
> ? ?callback_arg=0xffffff00046b1000, flags=0)
> ? ?at /usr/home/nox/src72s2/src/sys/amd64/amd64/busdma_machdep.c:738
> #9 ?0xffffffff804d6f2e in usbd_transfer (xfer=0xffffff00046b1000)
> ? ?at /usr/home/nox/src72s2/src/sys/dev/usb/usbdi.c:312
> #10 0xffffffff804d717f in usbd_do_request_flags_pipe
(dev=0xffffff0004751600,
> ---Type <return> to continue, or q <return> to quit---
> ? ?pipe=0xffffff000474cd80, req=0xffffff8085487f80,
data=0xffffff8085487fe0,
> ? ?flags=Variable "flags" is not available.
> ) at /usr/home/nox/src72s2/src/sys/dev/usb/usbdi.c:1100
> #11 0xffffffff804d72b5 in usbd_do_request_flags (dev=Variable
"dev" is not available.
> )
> ? ?at /usr/home/nox/src72s2/src/sys/dev/usb/usbdi.c:1070
> #12 0xffffffff804d518b in usbd_get_string_desc (dev=0xffffff0004751600,
sindex=Variable "sindex" is not available.
>
> ) at /usr/home/nox/src72s2/src/sys/dev/usb/usb_subr.c:171
> #13 0xffffffff804d6473 in usbd_get_string (dev=0xffffff0004751600, si=3,
> ? ?buf=0xffffff8085488160 "", len=128)
> ? ?at /usr/home/nox/src72s2/src/sys/dev/usb/usbdi.c:1353
> #14 0xffffffff804cdb49 in uhub_child_pnpinfo_str (cbdev=Variable
"cbdev" is not available.
> )
> ? ?at /usr/home/nox/src72s2/src/sys/dev/usb/uhub.c:658
> #15 0xffffffff80590ce5 in devaddq (type=0xffffffff8090dccf "+",
> ? ?what=0xffffff00046b0000 "umass0 vendor=0x0325 product=0xac02
devclass=0x00 devsubclass=0x00 release=0x1100
sernum=\"AA04012700152689\" intclass=0x08 intsubclass=0x06",
dev=0xffffff00046c0200)
> ? ?at /usr/home/nox/src72s2/src/sys/kern/subr_bus.c:625
> #16 0xffffffff805914ba in device_attach (dev=0xffffff00046c0200)
> ? ?at /usr/home/nox/src72s2/src/sys/kern/subr_bus.c:668
> #17 0xffffffff804d5b41 in usbd_new_device (parent=0xffffff00044a0200,
> ? ?bus=0xffffff0004472000, depth=Variable "depth" is not
available.
> )
> ? ?at /usr/home/nox/src72s2/src/sys/dev/usb/usb_subr.c:926
> #18 0xffffffff804cd79d in uhub_explore (dev=0xffffff00044a0300)
> ? ?at /usr/home/nox/src72s2/src/sys/dev/usb/uhub.c:523
> ---Type <return> to continue, or q <return> to quit---
> #19 0xffffffff804d23e8 in usb_discover (v=Variable "v" is not
available.
> )
> ? ?at /usr/home/nox/src72s2/src/sys/dev/usb/usb.c:724
> #20 0xffffffff804d33aa in usb_event_thread (arg=Variable "arg" is
not available.
> )
> ? ?at /usr/home/nox/src72s2/src/sys/dev/usb/usb.c:440
> #21 0xffffffff8054115f in fork_exit (
> ? ?callout=0xffffffff804d3320 <usb_event_thread>,
arg=0xffffff00044b1580,
> ? ?frame=0xffffff8085488c80)
> ? ?at /usr/home/nox/src72s2/src/sys/kern/kern_fork.c:811
> #22 0xffffffff8081a0ae in fork_trampoline ()
> ? ?at /usr/home/nox/src72s2/src/sys/amd64/amd64/exception.S:554
> #23 0x0000000000000000 in ?? ()
> #24 0x0000000000000000 in ?? ()
> #25 0x0000000000000001 in ?? ()
> #26 0x0000000000000000 in ?? ()
> #27 0x0000000000000000 in ?? ()
> #28 0x0000000000000000 in ?? ()
> #29 0x0000000000000000 in ?? ()
> #30 0x0000000000000000 in ?? ()
> #31 0x0000000000000000 in ?? ()
> #32 0x0000000000000000 in ?? ()
> #33 0x0000000000000000 in ?? ()
> #34 0x0000000000000000 in ?? ()
> #35 0x0000000000000000 in ?? ()
> ---Type <return> to continue, or q <return> to quit---
> #36 0x0000000000000000 in ?? ()
> #37 0x0000000000000000 in ?? ()
> #38 0x0000000000000000 in ?? ()
> #39 0x0000000000000000 in ?? ()
> #40 0x0000000000000000 in ?? ()
> #41 0x0000000000000000 in ?? ()
> #42 0x0000000000000000 in ?? ()
> #43 0x0000000000000000 in ?? ()
> #44 0x0000000000000000 in ?? ()
> #45 0x0000000000000000 in ?? ()
> #46 0x0000000000000000 in ?? ()
> #47 0x0000000000d84000 in ?? ()
> #48 0x0000000000000001 in ?? ()
> #49 0xffffffff80bba848 in sleepq_chains ()
> #50 0xffffff00044a5720 in ?? ()
> #51 0xffffff00044a5a70 in ?? ()
> #52 0xffffff8085487da0 in ?? ()
> #53 0xffffff8085487d38 in ?? ()
> #54 0xffffff00044a5720 in ?? ()
> #55 0xffffffff8058b01e in sched_switch (td=0x0, newtd=Cannot access memory
at address 0xffffffffffffffa8
> )
> ? ?at /usr/home/nox/src72s2/src/sys/kern/sched_ule.c:1938
> Previous frame inner to this frame (corrupt stack?)
> (kgdb) fr 7
> #7 ?0xffffffff804d67d4 in usb_transfer_complete (xfer=0xffffff00046b1000)
> ? ?at /usr/home/nox/src72s2/src/sys/dev/usb/usbdi.c:949
> 949 ? ? ? ? ? ? ? ? ? ? STAILQ_REMOVE_HEAD(&pipe->queue, next);
> (kgdb) p pipe
> $1 = 0xffffff000474cd80
> (kgdb) p *pipe
> $2 = {iface = 0x0, device = 0xffffff0004751600, endpoint =
0xffffff0004751638,
> ?refcnt = 1, running = 0 '\0', aborting = 0 '\0', queue =
{stqh_first = 0x0,
> ? ?stqh_last = 0xffffff000474cda0}, next = {le_next = 0x0, le_prev = 0x0},
> ?intrxfer = 0x0, repeat = 0 '\0', interval = -1, methods =
0xffffffff80afbf00}
> (kgdb) q
> zsh triton#
>
> ?Suggestions/patches welcome...
>
> ?Thanx,
> ? ? ? ?Juergen
Hi,
Wow, a year passed until today I attached almost the same keyboard
on 7.3-RELEASE amd64 and faced panic with the same backtrace.
Is there maybe some *cough* specific handling need with this vendor?
db> bt
Tracing pid 47 tid 100047 td 0xffffff0006c54740
usb_transfer_complete() at usb_transfer_complete+0x1d4
bus_dmamap_load() at bus_dmamap_load+0x314
usbd_transfer() at usbd_transfer+0xee
usbd_do_request_flags_pipe() at usbd_do_request_flags_pipe+0x8f
usbd_do_request_flags() at usbd_do_request_flags+0x25
usbd_get_string_desc() at usbd_get_string_desc+0x9b
usbd_get_string() at usbd_get_string+0x83
uhub_child_pnpinfo_str() at uhub_child_pnpinfo_str+0xd9
devaddq() at devaddq+0xd5
device_attach() at device_attach+0x13a
usbd_new_device() at usbd_new_device+0x816
uhub_explore() at uhub_explore+0x1bd
usb_discover() at usb_discover+0x38
usb_event_thread() at usb_event_thread+0x8a
fork_exit() at fork_exit+0x11f
fork_trampoline() at fork_trampoline+0xe
--- trap 0, rip = 0, rsp = 0xffffff8161196d30, rbp = 0 ---
db> show msgbuf
msgbufp = 0xffffffff80e20fe0
magic = 63062, size = 65504, r= 44209, w = 44746, ptr 0xffffffff80e11000, cksum=
3347961
umass0: <OCZ ATV, class 0/0, rev 2.00/1.10, addr 2> on uhub2
Fatal trap 12: page fault while in kernel mode
cpuid = 4; apic id = 04
fault virtual address = 0x290
fault code = supervisor read data, page not present
instruction pointer = 0x8:0xffffffff804a9d44
stack pointer = 0x10:0xffffff8161195db0
frame pointer = 0x10:0xffffff8161195df0
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, long 1, def32 0, gran 1
processor eflags = interrupt enabled, resume, IOPL = 0
current process = 47 (usb2)
--
wbr,
pluknet