i386/65783: Panic when attaching card reader to USB port
Martin
nakal at web.de
Mon Apr 19 13:00:47 PDT 2004
>Number: 65783
>Category: i386
>Synopsis: Panic when attaching card reader to USB port
>Confidential: no
>Severity: serious
>Priority: medium
>Responsible: freebsd-i386
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: sw-bug
>Submitter-Id: current-users
>Arrival-Date: Mon Apr 19 13:00:41 PDT 2004
>Closed-Date:
>Last-Modified:
>Originator: Martin
>Release: FreeBSD-CURRENT
>Organization:
>Environment:
FreeBSD xxx.local 5.2-CURRENT FreeBSD 5.2-CURRENT #0: Mon Apr 19 21:20:35 CEST 2004 i386
>Description:
When attaching the USB card reader/writer "hama - USB 2.0 Card Reader 9in1", I get panic instantly after the kernel recognizes the new device (it happens in two scenarios: on boot with attached device and while attaching to a running system).
Last output I can see before panic() occurs is (Thinkpad R40):
umass0: SCSI over Bulk-Only: quirks = 0x0000
umass0:3:0:-1: Attached to scbus3
da0: at umass-sim0 bus 0 target 0 lun 0
da0: <ICSI CF CARD CF 1.3A> Removable Direct Access SCSI-0 device
da0: 1.000MB/s transfers
da0: 122MB (250368 512 byte sectors: 64H 32S/T 122C)
da1: <ICSI MS Card MS 1.3A> Removable Direct Access SCSI-0 device
da1: 1.000MB/s transfers
da1: Attempt to query device size failed: NOT READY, Medium not present
(da2:umass-sim0:0:0:2): READ CAPACITY. CDB: 25 40 0 0 0 0 0 0 0 0
(da2:umass-sim0:0:0:2): ILLEGAL REQUEST asc:25,0
(da2:umass-sim0:0:0:2): Logical unit not supported
(da2:umass-sim0:0:0:2): fatal error, failed to attach device
(da2:umass-sim0:0:0:2): lost device
(da2:umass-sim0:0:0:2): removing device entry
(da2:umass-sim0:0:0:3): READ CAPACITY. CDB: 25 60 0 0 0 0 0 0 0 0
(da2:umass-sim0:0:0:3): ILLEGAL REQUEST asc:25,0
(da2:umass-sim0:0:0:3): Logical unit not supported
(da2:umass-sim0:0:0:3): fatal error, failed to attach device
(da2:umass-sim0:0:0:3): lost device
(da2:umass-sim0:0:0:3): removing device entry
Fatal trap 12: page fault while in kernel mode
fault virtual address = 0x3c
fault code = supervisor write, page not present
instruction pointer = 0x8:0xc0540cc9
stack pointer = 0x10:0xcdcd3ce4
frame pointer = 0x10:0xcdcd3ce8
code segment = base 0x0, limit 0xfffff, type 0x1b
= DPL 0, pres 1, def32 1, gran 1
processor eflags = interrupt enabled, resume, IOPL = 0
current process = 2 (g_event)
kernel: type 12 trap, code=0
Stopped at g_disk_destroy+0x9: movl $0,0x3c(%eax)
db> trace
g_disk_destroy(c2ddea80,0) at g_disk_destroy+0x9
one_event(cdcd3d20,c05424d1,258,190,c2af0898) at one_event+0x18f
g_run_events(258,190,c2af0898,c05424b0,cdcd3d34) at g_run_events+0x9
g_event_procbody(0,cdcd3d48) at g_event_procbody+0x21
fork_exit(c05424b0,0,cdcd3d48) at fork_exit+0x71
fork_trampoline() at fork_trampoline+0x8
--- trap 0x1, eip = 0, esp = 0xcdcd3d7c, ebp = 0 ---
I can also reproduce it on a second machine running current (P3-500). Both are running CURRENT with uhci (Intel chipset).
>How-To-Repeat:
- compile kernel with option USB_DEBUG (or else it will crash a bit later at various positions; non-deterministic)
- plug in the card reader
or
- boot FreeBSD with the card reader already plugged in
>Fix:
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-i386
mailing list