usb/73307: [panic] Kernel panics on USB disconnect

Alexey Illarionov littlesavage at rambler.ru
Wed Nov 16 10:20:33 PST 2005


The following reply was made to PR usb/73307; it has been noted by GNATS.

From: Alexey Illarionov <littlesavage at rambler.ru>
To: bug-followup at FreeBSD.org, yuri at tsoft.com
Cc:  
Subject: Re: usb/73307: [panic] Kernel panics on USB disconnect
Date: Wed, 16 Nov 2005 21:17:40 +0300

 õ ÍÅÎÑ ÔÁ ÖÅ ÐÒÏÂÌÅÍÁ Ó ÍÏÅÊ SONY DSC-W1/12 digital still ËÁÍÅÒÏÊ
 ïÎÁ ÖÅ ÏÂÓÕÖÄÁÅÔÓÑ × usb/73307
 ñ ÎÅ ÚÎÁÀ ËÁË ÉÓÐÒÁ×ÉÔØ Å£, Ñ ÔÏÌØËÏ ÓÏÂÒÁÌ ÎÅÍÎÏÇÏ ÏÔÌÁÄÏÞÎÏÊ ÉÎÆÏÒÍÁÃÉÉ:
 
 I have the same problem with my SONY DSC-W1/12 digital still camera.
 This problem also discussed in usb/73307 
 I do not know how to fix it, I only have some debugging information.
 
 Environment:
 uname -a
 FreeBSD ls.orionet.ru 5.4-RELEASE-p8 FreeBSD 5.4-RELEASE-p8 #17: Wed Nov 16 14:08:01 MSK 2005     alexey at ls.orionet.ru:/usr/obj/usr/src/sys/LS  i386
 
 Kernel build with this options:
 options         USB_DEBUG
 options         CAMDEBUG
 options         KDB
 options         DDB
 makeoptions             DEBUG=-g
 
 dmesg:
 Copyright (c) 1992-2005 The FreeBSD Project.
 Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994
 	The Regents of the University of California. All rights reserved.
 FreeBSD 5.4-RELEASE-p8 #17: Wed Nov 16 14:08:01 MSK 2005
     alexey at ls.orionet.ru:/usr/obj/usr/src/sys/LS
 Timecounter "i8254" frequency 1193182 Hz quality 0
 CPU: AMD Duron(tm) (1000.04-MHz 686-class CPU)
   Origin = "AuthenticAMD"  Id = 0x670  Stepping = 0
   Features=0x383f9ff<FPU,VME,DE,PSE,TSC,MSR,PAE,MCE,CX8,SEP,MTRR,PGE,MCA,CMOV,PAT,PSE36,MMX,FXSR,SSE>
   AMD Features=0xc0440000<RSVD,AMIE,DSP,3DNow!>
 real memory  = 268369920 (255 MB)
 avail memory = 248766464 (237 MB)
     ACPI-0277: *** Warning: Invalid checksum in table [FACP] (ae, sum a5 is not zero)
 npx0: <math processor> on motherboard
 npx0: INT 16 interface
 acpi0: <AMIINT VIA_K7> on motherboard
 acpi0: Power Button (fixed)
 Timecounter "ACPI-fast" frequency 3579545 Hz quality 1000
 acpi_timer0: <24-bit timer at 3.579545MHz> port 0x808-0x80b on acpi0
 cpu0: <ACPI CPU> on acpi0
 acpi_throttle0: <ACPI CPU Throttling> on cpu0
 acpi_button0: <Power Button> on acpi0
 pcib0: <ACPI Host-PCI bridge> port 0xcf8-0xcff on acpi0
 pci0: <ACPI PCI bus> on pcib0
 pcib1: <PCI-PCI bridge> at device 1.0 on pci0
 pci1: <PCI bus> on pcib1
 nvidia0: <GeForce2 MX/MX 400> mem 0xd0000000-0xd7ffffff,0xde000000-0xdeffffff irq 11 at device 0.0 on pci1
 isab0: <PCI-ISA bridge> at device 7.0 on pci0
 isa0: <ISA bus> on isab0
 atapci0: <VIA 82C686B UDMA100 controller> port 0xffa0-0xffaf,0x376,0x170-0x177,0x3f6,0x1f0-0x1f7 at device 7.1 on pci0
 atapci0: Correcting VIA config for southbridge data corruption bug
 ata0: channel #0 on atapci0
 ata1: channel #1 on atapci0
 uhci0: <VIA 83C572 USB controller> port 0xcc00-0xcc1f irq 9 at device 7.2 on pci0
 uhci0: LegSup = 0xa000
 usb0: <VIA 83C572 USB controller> on uhci0
 usb0: USB revision 1.0
 usbd_get_string: getting lang failed, using 0
 uhub0: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub0: 2 ports with 2 removable, self powered
 uhci1: <VIA 83C572 USB controller> port 0xd000-0xd01f irq 9 at device 7.3 on pci0
 uhci1: LegSup = 0xa000
 usb1: <VIA 83C572 USB controller> on uhci1
 usb1: USB revision 1.0
 usbd_get_string: getting lang failed, using 0
 uhub1: VIA UHCI root hub, class 9/0, rev 1.00/1.00, addr 1
 uhub1: 2 ports with 2 removable, self powered
 pci0: <serial bus, SMBus> at device 7.4 (no driver attached)
 pcm0: <VIA VT82C686A> port 0xd400-0xd403,0xd800-0xd803,0xdc00-0xdcff irq 10 at device 7.5 on pci0
 pcm0: <Avance Logic ALC200 AC97 Codec>
 rl0: <RealTek 8139 10/100BaseTX> port 0xc800-0xc8ff mem 0xdfffff00-0xdfffffff irq 5 at device 13.0 on pci0
 miibus0: <MII bus> on rl0
 rlphy0: <RealTek internal media interface> on miibus0
 rlphy0:  10baseT, 10baseT-FDX, 100baseTX, 100baseTX-FDX, auto
 rl0: Ethernet address: 00:80:48:12:e8:31
 acpi_button1: <Sleep Button> on acpi0
 atkbdc0: <Keyboard controller (i8042)> port 0x64,0x60 irq 1 on acpi0
 atkbd0: <AT Keyboard> irq 1 on atkbdc0
 kbd0 at atkbd0
 psm0: <PS/2 Mouse> irq 12 on atkbdc0
 psm0: model NetMouse/NetScroll Optical, device ID 0
 fdc0: <floppy drive controller> port 0x3f7,0x3f2-0x3f5 irq 6 drq 2 on acpi0
 fd0: <1440-KB 3.5" drive> on fdc0 drive 0
 sio0: <16550A-compatible COM port> port 0x3f8-0x3ff irq 4 flags 0x10 on acpi0
 sio0: type 16550A
 sio1: <16550A-compatible COM port> port 0x2f8-0x2ff irq 3 on acpi0
 sio1: type 16550A
 ppc0: <ECP parallel printer port> port 0x778-0x77b,0x378-0x37f irq 7 drq 3 on acpi0
 ppc0: SMC-like chipset (ECP/EPP/PS2/NIBBLE) in COMPATIBLE mode
 ppc0: FIFO with 16/16/8 bytes threshold
 ppbus0: <Parallel port bus> on ppc0
 plip0: <PLIP network interface> on ppbus0
 lpt0: <Printer> on ppbus0
 lpt0: Interrupt-driven port
 ppi0: <Parallel I/O> on ppbus0
 orm0: <ISA Option ROMs> at iomem 0xcc800-0xcefff,0xc0000-0xcc7ff on isa0
 pmtimer0 on isa0
 sc0: <System console> at flags 0x100 on isa0
 sc0: VGA <16 virtual consoles, flags=0x300>
 vga0: <Generic ISA VGA> at port 0x3c0-0x3df iomem 0xa0000-0xbffff on isa0
 Timecounter "TSC" frequency 1000043520 Hz quality 800
 Timecounters tick every 10.000 msec
 ata0-master: DMA limited to UDMA33, non-ATA66 cable or device
 ad0: 39083MB <Maxtor 4D040H2/DAH017K0> [79408/16/63] at ata0-master UDMA33
 ad1: 1039MB <QUANTUM FIREBALL1080A/A63.0E00> [2112/16/63] at ata0-slave WDMA2
 acd0: CDRW <HL-DT-ST GCE-8520B/1.04> at ata1-slave UDMA33
 Mounting root from ufs:/dev/ad0s1a
 
 Logs: 
 sysctl hw.usb.debug=5
 sysctl hw.usb.umass.debug=20
 camcontrol debug -X -c all
 18:29:38 Turn on the camera   
 Nov 16 18:29:38 ls kernel: usb_discover
 Nov 16 18:29:38 ls kernel: usb_needs_explore
 Nov 16 18:29:38 ls kernel: usbd_reset_port: port 1 reset done, error=NORMAL_COMPLETION
 Nov 16 18:29:39 ls kernel: usbd_new_device bus=0xc1a15000 port=1 depth=1 speed=2
 Nov 16 18:29:39 ls kernel: usbd_setup_pipe: dev=0xc1e81000 iface=0 ep=0xc1e81024 pipe=0xc1e81004
 Nov 16 18:29:39 ls kernel: usbd_get_desc: type=1, index=0, len=8
 Nov 16 18:29:39 ls kernel: usbd_new_device: adding unit addr=2, rev=200, class=0, subclass=0, protocol=0, maxpacket=64, len=18, speed=2
 Nov 16 18:29:39 ls kernel: usbd_get_device_desc:
 Nov 16 18:29:39 ls kernel: usbd_get_desc: type=1, index=0, len=18
 Nov 16 18:29:39 ls kernel: usbd_new_device: new dev (addr 2), dev=0xc1e81000, parent=0xc1a0c300
 Nov 16 18:29:39 ls kernel: usbd_probe_and_attach: trying device specific drivers
 Nov 16 18:29:39 ls kernel: usbd_probe_and_attach: no device specific driver found
 Nov 16 18:29:39 ls kernel: usbd_probe_and_attach: looping over 1 configurations
 Nov 16 18:29:39 ls kernel: usbd_probe_and_attach: trying config idx=0
 Nov 16 18:29:39 ls kernel: usbd_get_config_desc: confidx=0
 Nov 16 18:29:39 ls kernel: usbd_get_desc: type=2, index=0, len=9
 Nov 16 18:29:39 ls kernel: usbd_get_desc: type=2, index=0, len=39
 Nov 16 18:29:39 ls kernel: usbd_set_config_index: status=0x0001, error=NORMAL_COMPLETION
 Nov 16 18:29:39 ls kernel: usbd_set_config_index: (addr 1) cno=2 attr=0xc0, selfpowered=1, power=2
 Nov 16 18:29:39 ls kernel: usbd_set_config_index: set config 1
 Nov 16 18:29:39 ls kernel: usbd_fill_iface_data: ifaceidx=0 altidx=0
 Nov 16 18:29:39 ls kernel: usbd_find_idesc: idx=0(-1) altidx=0(0) len=9 type=2
 Nov 16 18:29:39 ls kernel: usbd_find_idesc: idx=0(-1) altidx=0(0) len=9 type=4
 Nov 16 18:29:39 ls kernel: usbd_fill_iface_data: found idesc nendpt=3
 Nov 16 18:29:39 ls kernel: umass0: Sony Sony DSC, rev 2.00/5.00, addr 2
 Nov 16 18:29:39 ls kernel: umass0: RBC over CBI; quirks = 0x0000
 Nov 16 18:29:39 ls kernel: usbd_open_pipe: iface=0xc1ad2400 address=0x1 flags=0x1
 Nov 16 18:29:39 ls kernel: usbd_setup_pipe: dev=0xc1e81000 iface=0xc1ad2400 ep=0xc1a3a9e0 pipe=0xcc90d3b4
 Nov 16 18:29:39 ls kernel: usbd_open_pipe: iface=0xc1ad2400 address=0x82 flags=0x1
 Nov 16 18:29:39 ls kernel: usbd_setup_pipe: dev=0xc1e81000 iface=0xc1ad2400 ep=0xc1a3a9e8 pipe=0xcc90d3b4
 Nov 16 18:29:39 ls kernel: umass0:0:0:-1: Attached to scbus0
 Nov 16 18:29:39 ls kernel: cam_debug: xpt_schedule_dev
 Nov 16 18:29:39 ls kernel: cam_debug: Inserting onto queue
 Nov 16 18:29:39 ls kernel: cam_debug: xpt_run_dev_allocq
 Nov 16 18:29:39 ls kernel: cam_debug:    qfrozen_cnt == 0x0, entries == 1, openings == 1, active == 0
 Nov 16 18:29:39 ls kernel: cam_debug: running device 0xc1e15400
 Nov 16 18:29:39 ls kernel: cam_debug: calling periph start
 Nov 16 18:29:39 ls kernel: (probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 0 0 0 24 0 
 Nov 16 18:29:39 ls kernel: cam_debug: xpt_schedule_dev
 Nov 16 18:29:39 ls kernel: cam_debug: Inserting onto queue
 Nov 16 18:29:39 ls kernel: cam_debug: xpt_run_dev_sendq
 Nov 16 18:29:39 ls kernel: cam_debug: running device 0xc1e15400
 Nov 16 18:30:35 ls kernel: usb_event_thread: woke up
 Nov 16 18:30:35 ls kernel: usb_discover
 Nov 16 18:30:39 ls kernel: usb_event_thread: woke up
 Nov 16 18:30:39 ls kernel: usb_discover
 Nov 16 18:30:44 ls kernel: usb_add_task: task=0xc1e5c884
 Nov 16 18:30:44 ls kernel: usb_task_thread: woke up task=0xc1e5c884
 Nov 16 18:30:44 ls kernel: umass0: CBI reset failed, STALLED
 Nov 16 18:30:44 ls kernel: (probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 0 0 0 24 0 
 Nov 16 18:30:44 ls kernel: cam_debug: xpt_schedule_dev
 Nov 16 18:30:44 ls kernel: cam_debug: Inserting onto queue
 Nov 16 18:30:44 ls kernel: cam_debug: xpt_run_dev_sendq
 Nov 16 18:30:44 ls kernel: cam_debug: running device 0xc1e15400
 Nov 16 18:31:35 ls kernel: usb_event_thread: woke up
 Nov 16 18:31:35 ls kernel: usb_discover
 Nov 16 18:31:39 ls kernel: usb_event_thread: woke up
 Nov 16 18:31:39 ls kernel: usb_discover
     /* 18:31:40 sysctl hw.usb.debug=10 */
 Nov 16 18:31:49 ls kernel: usb_add_task: task=0xc1e5c884
 Nov 16 18:31:49 ls kernel: usb_task_thread: woke up task=0xc1e5c884
 Nov 16 18:31:49 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1e5c800 status=15 actlen=0
 Nov 16 18:31:49 ls kernel: usb_freemem: frag=0xc1a10ec0
 Nov 16 18:31:49 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:31:49 ls kernel: usbd_transfer: xfer=0xc1b1ca00, flags=0, pipe=0xc1e80d00, running=1
 Nov 16 18:31:49 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:31:49 ls kernel: usb_allocmem: use frag=0xc1a10ec0 size=12
 Nov 16 18:31:49 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=1 timeout=65000
 Nov 16 18:31:49 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0xc1b1ca00
 Nov 16 18:31:49 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1b1ca00 status=17 actlen=12
 Nov 16 18:31:49 ls kernel: usb_freemem: frag=0xc1a10ec0
 Nov 16 18:31:49 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:31:49 ls kernel: umass0: CBI reset failed, STALLED
 Nov 16 18:31:49 ls kernel: usbd_transfer: xfer=0xc1d23400, flags=0, pipe=0xc1e80d00, running=1
 Nov 16 18:31:49 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:31:49 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=1 timeout=65000
 Nov 16 18:31:49 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0xc1d23400
 Nov 16 18:31:49 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1d23400 status=0 actlen=0
 Nov 16 18:31:49 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:31:49 ls kernel: usbd_transfer: xfer=0xc1d23700, flags=0, pipe=0xc1e80d00, running=1
 Nov 16 18:31:49 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:31:49 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=1 timeout=65000
 Nov 16 18:31:49 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0xc1d23700
 Nov 16 18:31:49 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1d23700 status=0 actlen=0
 Nov 16 18:31:49 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:31:49 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0
 Nov 16 18:31:49 ls kernel: (probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 0 0 0 24 0 
 Nov 16 18:31:49 ls kernel: cam_debug: xpt_schedule_dev
 Nov 16 18:31:49 ls kernel: cam_debug: Inserting onto queue
 Nov 16 18:31:49 ls kernel: cam_debug: xpt_run_dev_sendq
 Nov 16 18:31:49 ls kernel: cam_debug: running device 0xc1e15400
 Nov 16 18:31:49 ls kernel: usbd_transfer: xfer=0xc1e5c800, flags=0, pipe=0xc1e80d00, running=0
 Nov 16 18:31:49 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:31:49 ls kernel: usb_allocmem: use frag=0xc1a10ec0 size=6
 Nov 16 18:31:49 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=0 timeout=65000
 Nov 16 18:32:35 ls kernel: usb_event_thread: woke up
 Nov 16 18:32:35 ls kernel: usb_discover
 Nov 16 18:32:39 ls kernel: usb_event_thread: woke up
 Nov 16 18:32:39 ls kernel: usb_discover
     /* 18:32:46 Turn off the camera */
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1e5c800 status=13 actlen=6
 Nov 16 18:32:46 ls kernel: usb_freemem: frag=0xc1a10ec0
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:32:46 ls kernel: usbd_transfer: xfer=0xc1b1ca00, flags=0, pipe=0xc1e80d00, running=1
 Nov 16 18:32:46 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:32:46 ls kernel: usb_allocmem: use frag=0xc1a10ec0 size=12
 Nov 16 18:32:46 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=1 timeout=65000
 Nov 16 18:32:46 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0xc1b1ca00
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1b1ca00 status=17 actlen=0
 Nov 16 18:32:46 ls kernel: usb_freemem: frag=0xc1a10ec0
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:32:46 ls kernel: umass0: CBI reset failed, STALLED
 Nov 16 18:32:46 ls kernel: usbd_transfer: xfer=0xc1d23400, flags=0, pipe=0xc1e80d00, running=1
 Nov 16 18:32:46 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:32:46 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=1 timeout=65000
 Nov 16 18:32:46 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0xc1d23400
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1d23400 status=17 actlen=0
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:32:46 ls kernel: umass0: CBI bulk-in stall clear failed, STALLED
 Nov 16 18:32:46 ls kernel: usbd_transfer: xfer=0xc1d23700, flags=0, pipe=0xc1e80d00, running=1
 Nov 16 18:32:46 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:32:46 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=1 timeout=65000
 Nov 16 18:32:46 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0xc1d23700
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1d23700 status=17 actlen=0
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:32:46 ls kernel: umass0: CBI bulk-out stall clear failed, STALLED
 Nov 16 18:32:46 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0
 Nov 16 18:32:46 ls kernel: (probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 0 0 0 24 0 
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_schedule_dev
 Nov 16 18:32:46 ls kernel: cam_debug: Inserting onto queue
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_run_dev_sendq
 Nov 16 18:32:46 ls kernel: cam_debug: running device 0xc1e15400
 Nov 16 18:32:46 ls kernel: usbd_transfer: xfer=0xc1e5c800, flags=0, pipe=0xc1e80d00, running=0
 Nov 16 18:32:46 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:32:46 ls kernel: usb_allocmem: use frag=0xc1a10ec0 size=6
 Nov 16 18:32:46 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=0 timeout=65000
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1e5c800 status=17 actlen=0
 Nov 16 18:32:46 ls kernel: usb_freemem: frag=0xc1a10ec0
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:32:46 ls kernel: usbd_transfer: xfer=0xc1e5c800, flags=0, pipe=0xc1e80d00, running=1
 Nov 16 18:32:46 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:32:46 ls kernel: usb_allocmem: use frag=0xc1a10ec0 size=6
 Nov 16 18:32:46 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=1 timeout=65000
 Nov 16 18:32:46 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0xc1e5c800
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1e5c800 status=17 actlen=0
 Nov 16 18:32:46 ls kernel: usb_freemem: frag=0xc1a10ec0
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:32:46 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_release_ccb
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_schedule_dev
 Nov 16 18:32:46 ls kernel: cam_debug: Inserting onto queue
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_run_dev_allocq
 Nov 16 18:32:46 ls kernel: cam_debug:    qfrozen_cnt == 0x0, entries == 1, openings == 1, active == 0
 Nov 16 18:32:46 ls kernel: cam_debug: running device 0xc1e15400
 Nov 16 18:32:46 ls kernel: cam_debug: calling periph start
 Nov 16 18:32:46 ls kernel: (probe0:umass-sim0:0:0:0): INQUIRY. CDB: 12 1 80 0 ff 0 
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_schedule_dev
 Nov 16 18:32:46 ls kernel: cam_debug: Inserting onto queue
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_run_dev_sendq
 Nov 16 18:32:46 ls kernel: cam_debug: running device 0xc1e15400
 Nov 16 18:32:46 ls kernel: usbd_transfer: xfer=0xc1e5c800, flags=0, pipe=0xc1e80d00, running=0
 Nov 16 18:32:46 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:32:46 ls kernel: usb_allocmem: use frag=0xc1a10ec0 size=6
 Nov 16 18:32:46 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=0 timeout=65000
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1e5c800 status=17 actlen=0
 Nov 16 18:32:46 ls kernel: usb_freemem: frag=0xc1a10ec0
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:32:46 ls kernel: usbd_transfer: xfer=0xc1e5c800, flags=0, pipe=0xc1e80d00, running=1
 Nov 16 18:32:46 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:32:46 ls kernel: usb_allocmem: use frag=0xc1a10ec0 size=6
 Nov 16 18:32:46 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=1 timeout=65000
 Nov 16 18:32:46 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0xc1e5c800
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1e5c800 status=17 actlen=0
 Nov 16 18:32:46 ls kernel: usb_freemem: frag=0xc1a10ec0
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:32:46 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_release_ccb
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_schedule_dev
 Nov 16 18:32:46 ls kernel: cam_debug: Inserting onto queue
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_run_dev_allocq
 Nov 16 18:32:46 ls kernel: cam_debug:    qfrozen_cnt == 0x0, entries == 1, openings == 1, active == 0
 Nov 16 18:32:46 ls kernel: cam_debug: running device 0xc1e15400
 Nov 16 18:32:46 ls kernel: cam_debug: calling periph start
 Nov 16 18:32:46 ls kernel: (probe0:umass-sim0:0:0:0): TEST UNIT READY. CDB: 0 0 0 0 0 0 
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_schedule_dev
 Nov 16 18:32:46 ls kernel: cam_debug: Inserting onto queue
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_run_dev_sendq
 Nov 16 18:32:46 ls kernel: cam_debug: running device 0xc1e15400
 Nov 16 18:32:46 ls kernel: usbd_transfer: xfer=0xc1e5c800, flags=0, pipe=0xc1e80d00, running=0
 Nov 16 18:32:46 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:32:46 ls kernel: usb_allocmem: use frag=0xc1a10ec0 size=6
 Nov 16 18:32:46 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=0 timeout=65000
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1e5c800 status=17 actlen=0
 Nov 16 18:32:46 ls kernel: usb_freemem: frag=0xc1a10ec0
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:32:46 ls kernel: usbd_transfer: xfer=0xc1e5c800, flags=0, pipe=0xc1e80d00, running=1
 Nov 16 18:32:46 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:32:46 ls kernel: usb_allocmem: use frag=0xc1a10ec0 size=6
 Nov 16 18:32:46 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=1 timeout=65000
 Nov 16 18:32:46 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0xc1e5c800
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1e5c800 status=17 actlen=0
 Nov 16 18:32:46 ls kernel: usb_freemem: frag=0xc1a10ec0
 Nov 16 18:32:46 ls kernel: usb_transfer_complete: repeat=0 new head=0
 Nov 16 18:32:46 ls kernel: usbd_start_next: pipe=0xc1e80d00, xfer=0
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_release_ccb
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_schedule_dev
 Nov 16 18:32:46 ls kernel: cam_debug: Inserting onto queue
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_run_dev_allocq
 Nov 16 18:32:46 ls kernel: cam_debug:    qfrozen_cnt == 0x0, entries == 1, openings == 1, active == 0
 Nov 16 18:32:46 ls kernel: cam_debug: running device 0xc1e15400
 Nov 16 18:32:46 ls kernel: cam_debug: calling periph start
 Nov 16 18:32:46 ls kernel: (da0:umass-sim0:0:0:0): READ CAPACITY. CDB: 25 0 0 0 0 0 0 0 0 0 
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_schedule_dev
 Nov 16 18:32:46 ls kernel: cam_debug: Inserting onto queue
 Nov 16 18:32:46 ls kernel: cam_debug: xpt_run_dev_sendq
 Nov 16 18:32:46 ls kernel: cam_debug: running device 0xc1e15400
 Nov 16 18:32:46 ls kernel: usbd_transfer: xfer=0xc1e5c800, flags=0, pipe=0xc1e80d00, running=0
 Nov 16 18:32:46 ls kernel: usbd_dump_queue: pipe=0xc1e80d00
 Nov 16 18:32:46 ls kernel: usb_allocmem: use frag=0xc1a10ec0 size=10
 Nov 16 18:32:46 ls kernel: usb_insert_transfer: pipe=0xc1e80d00 running=0 timeout=10000
 Nov 16 18:53:04 ls syslogd: kernel boot file is /boot/kernel/kernel
 Next I type manually. From the pictures made by this chamber:
 usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1e5c800 status=17 actlen=0
 usb_freemem: frag=0xc1a10ec0
 usb_transfer_complete: repeat=0 new head=0
 usbd_transfer: xfer=0xc1e5c800, flags=0, pipe=0xc1e80d00, running=1
 usbd_dump_queue: pipe=0xc1e80d00
 usb_allocmem: use frag=0xc1a10ec0 size=6
 usb_insert_transfer: pipe=0xc1e80d00 running=1 timeout=10000
 usbd_start_next: pipe=0xc1e80d00, xfer=0xc1e5c800
 usb_transfer_complete: pipe=0xc1e80d00 xfer=0xc1e5c800 status=17 actlen=0
 usb_freemem: frag=0xc1a10ec0
 usb_transfer_complete: repeat=0 new head=0
 usbd_start_next: pipe=0xc1e80d00, xfer=0
 
 
 Fatal trap 18: integer divide fault while in kernel mode
 instruction pointer	= 0x8:0xc07b9cb3
 stack pointer		= 0x10:0xcbeff79c
 frame pointer		= 0x10:0xcbeff824
 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		= 36 (swi3: cambio)
 [thread pid 36 tid 100011 ]
 Stopped at	__qdivrem+0x3b: divl	%ecx,%eax
 
 backtrace:
 ls# kgdb -n 16 kernel.debug
 [GDB will not be able to debug user-mode threads: /usr/lib/libthread_db.so: Undefined symbol "ps_pglobal_lookup"]
 GNU gdb 6.1.1 [FreeBSD]
 Copyright 2004 Free Software Foundation, Inc.
 GDB is free software, covered by the GNU General Public License, and you are
 welcome to change it and/or distribute copies of it under certain conditions.
 Type "show copying" to see the conditions.
 There is absolutely no warranty for GDB.  Type "show warranty" for details.
 This GDB was configured as "i386-marcel-freebsd".
 #0  doadump () at pcpu.h:159
 159		__asm __volatile("movl %%fs:0,%0" : "=r" (td));
 (kgdb) bt
 #0  doadump () at pcpu.h:159
 #1  0xc05ff816 in boot (howto=260) at /usr/src/sys/kern/kern_shutdown.c:410
 #2  0xc05ffadc in panic (fmt=0xc07dc345 "from debugger")
     at /usr/src/sys/kern/kern_shutdown.c:566
 #3  0xc0461d19 in db_panic (addr=-1065640781, have_addr=0, count=-1, 
     modif=0xcbeff5f4 "") at /usr/src/sys/ddb/db_command.c:435
 #4  0xc0461cb0 in db_command (last_cmdp=0xc08aac44, cmd_table=0x0, 
     aux_cmd_tablep=0xc082eaec, aux_cmd_tablep_end=0xc082eb08)
     at /usr/src/sys/ddb/db_command.c:349
 #5  0xc0461d78 in db_command_loop () at /usr/src/sys/ddb/db_command.c:455
 #6  0xc046390d in db_trap (type=18, code=0) at /usr/src/sys/ddb/db_main.c:221
 #7  0xc0616e7e in kdb_trap (type=18, code=0, tf=0xcbeff75c)
     at /usr/src/sys/kern/subr_kdb.c:468
 #8  0xc07ade79 in trap_fatal (frame=0xcbeff75c, eva=0)
     at /usr/src/sys/i386/i386/trap.c:812
 #9  0xc07ad9e4 in trap (frame=
       {tf_fs = 24, tf_es = 16, tf_ds = 16, tf_edi = 1, tf_esi = 0, tf_ebp = -873465820, tf_isp = -873465976, tf_ebx = 33619969, tf_edx = 0, tf_ecx = 0, tf_eax = 1, tf_trapno = 18, tf_err = 0, tf_eip = -1065640781, tf_cs = 8, tf_eflags = 66118, tf_esp = -1047541504, tf_ss = -873465864})
     at /usr/src/sys/i386/i386/trap.c:622
 #10 0xc079e01a in calltrap () at /usr/src/sys/i386/i386/exception.s:140
 #11 0x00000018 in ?? ()
 #12 0x00000010 in ?? ()
 ---Type <return> to continue, or q <return> to quit---
 #13 0x00000010 in ?? ()
 #14 0x00000001 in ?? ()
 #15 0x00000000 in ?? ()
 #16 0xcbeff824 in ?? ()
 #17 0xcbeff788 in ?? ()
 #18 0x02010001 in ?? ()
 #19 0x00000000 in ?? ()
 #20 0x00000000 in ?? ()
 #21 0x00000001 in ?? ()
 #22 0x00000012 in ?? ()
 #23 0x00000000 in ?? ()
 #24 0xc07b9cb3 in __qdivrem (uq=Unhandled dwarf expression opcode 0x93
 ) at /usr/src/sys/libkern/qdivrem.c:97
 #25 0xc07ba0fe in __udivdi3 (a=33619969, b=0)
     at /usr/src/sys/libkern/udivdi3.c:47
 #26 0xc0443e9e in cam_calc_geometry (ccg=0xcbeff908, extended=1)
     at /usr/src/sys/cam/cam.c:376
 #27 0xc05a11f9 in umass_cam_action (sim=0xc1d99340, ccb=0xcbeff908)
     at /usr/src/sys/dev/usb/umass.c:2580
 #28 0xc0448186 in xpt_action (start_ccb=0xcbeff908)
     at /usr/src/sys/cam/cam_xpt.c:3076
 #29 0xc04561c9 in dasetgeom (periph=0x0, block_len=0, maxsector=33619968)
     at /usr/src/sys/cam/scsi/scsi_da.c:1741
 #30 0xc0455ad2 in dadone (periph=0xc1e80b00, done_ccb=0xc1a4e400)
     at /usr/src/sys/cam/scsi/scsi_da.c:1395
 ---Type <return> to continue, or q <return> to quit---
 #31 0xc044c115 in camisr (V_queue=0xc08aa00c)
     at /usr/src/sys/cam/cam_xpt.c:7072
 #32 0xc05ebb41 in ithread_loop (arg=0xc18fd900)
     at /usr/src/sys/kern/kern_intr.c:547
 #33 0xc05eadd4 in fork_exit (callout=0xc05eb9f0 <ithread_loop>, 
     arg=0xc18fd900, frame=0xcbeffd48) at /usr/src/sys/kern/kern_fork.c:791
 #34 0xc079e07c in fork_trampoline () at /usr/src/sys/i386/i386/exception.s:209
 (kgdb) up 26
 #26 0xc0443e9e in cam_calc_geometry (ccg=0xcbeff908, extended=1)
     at /usr/src/sys/cam/cam.c:376
 376		size_mb = ccg->volume_size / ((1024L * 1024L) / ccg->block_size);
 (kgdb) l
 371	void
 372	cam_calc_geometry(struct ccb_calc_geometry *ccg, int extended)
 373	{
 374		uint32_t size_mb, secs_per_cylinder;
 375	
 376		size_mb = ccg->volume_size / ((1024L * 1024L) / ccg->block_size);
 377		if (size_mb > 1024 && extended) {
 378			ccg->heads = 255;
 379			ccg->secs_per_track = 63;
 380		} else {
 (kgdb) print *ccg
 $1 = {ccb_h = {pinfo = {priority = 1, generation = 15, index = -1}, 
     xpt_links = {le = {le_next = 0xc06189fa, le_prev = 0xa}, sle = {
         sle_next = 0xc06189fa}, tqe = {tqe_next = 0xc06189fa, 
         tqe_prev = 0xa}, stqe = {stqe_next = 0xc06189fa}}, sim_links = {le = {
         le_next = 0xffffffff, le_prev = 0x1}, sle = {sle_next = 0xffffffff}, 
       tqe = {tqe_next = 0xffffffff, tqe_prev = 0x1}, stqe = {
         stqe_next = 0xffffffff}}, periph_links = {le = {le_next = 0xcbeff994, 
         le_prev = 0x0}, sle = {sle_next = 0xcbeff994}, tqe = {
         tqe_next = 0xcbeff994, tqe_prev = 0x0}, stqe = {
         stqe_next = 0xcbeff994}}, retry_count = 0, cbfcnp = 0xc14468c0, 
     func_code = XPT_CALC_GEOMETRY, status = 0, path = 0xc1a0a380, 
     path_id = 0, target_id = 0, target_lun = 0, flags = 0, periph_priv = {
       entries = {{ptr = 0x10, field = 16, bytes = "\020\000\000"}, {
           ptr = 0x0, field = 0, bytes = "\000\000\000"}}, 
       bytes = "\020\000\000\000\000\000\000"}, sim_priv = {entries = {{
           ptr = 0x0, field = 0, bytes = "\000\000\000"}, {ptr = 0xc14468c0, 
           field = 3242485952, bytes = "ÀhDÁ"}}, 
       bytes = "\000\000\000\000ÀhDÁ"}, timeout = 16, timeout_ch = {
       callout = 0x0}}, block_size = 402653184, volume_size = 33619969, 
   cylinders = 0, heads = 0 '\0', secs_per_track = 0 '\0'}
 (kgdb) print 1024L*1024L/ccg->block_size
 $3 = 0
 (kgdb) up
 #27 0xc05a11f9 in umass_cam_action (sim=0xc1d99340, ccb=0xcbeff908)
     at /usr/src/sys/dev/usb/umass.c:2580
 2580			cam_calc_geometry(&ccb->ccg, /*extended*/1);
 (kgdb) l
 2575			xpt_done(ccb);
 2576			break;
 2577		}
 2578		case XPT_CALC_GEOMETRY:
 2579		{
 2580			cam_calc_geometry(&ccb->ccg, /*extended*/1);
 2581			xpt_done(ccb);
 2582			break;
 2583		}
 2584		case XPT_NOOP:
 (kgdb) up
 #28 0xc0448186 in xpt_action (start_ccb=0xcbeff908)
     at /usr/src/sys/cam/cam_xpt.c:3076
 3076			(*(sim->sim_action))(sim, start_ccb);
 (kgdb) l
 3071				start_ccb->ccb_h.status = CAM_REQ_CMP;
 3072				break;
 3073			}
 3074	#endif
 3075			sim = start_ccb->ccb_h.path->bus->sim;
 3076			(*(sim->sim_action))(sim, start_ccb);
 3077			break;
 3078		}
 3079		case XPT_ABORT:
 3080		{
 (kgdb) up
 #29 0xc04561c9 in dasetgeom (periph=0x0, block_len=0, maxsector=33619968)
     at /usr/src/sys/cam/scsi/scsi_da.c:1741
 1741		xpt_action((union ccb*)&ccg);
 (kgdb) l
 1736		ccg.block_size = dp->secsize;
 1737		ccg.volume_size = dp->sectors;
 1738		ccg.heads = 0;
 1739		ccg.secs_per_track = 0;
 1740		ccg.cylinders = 0;
 1741		xpt_action((union ccb*)&ccg);
 1742		dp->heads = ccg.heads;
 1743		dp->secs_per_track = ccg.secs_per_track;
 1744		dp->cylinders = ccg.cylinders;
 1745	}
 (kgdb) up
 #30 0xc0455ad2 in dadone (periph=0xc1e80b00, done_ccb=0xc1a4e400)
     at /usr/src/sys/cam/scsi/scsi_da.c:1395
 1395				dasetgeom(periph, block_size, maxsector);
 (kgdb) l
 1390					}
 1391				} else {
 1392					block_size = scsi_4btoul(rcaplong->length);
 1393					maxsector = scsi_8btou64(rcaplong->addr);
 1394				}
 1395				dasetgeom(periph, block_size, maxsector);
 1396				dp = &softc->params;
 1397				snprintf(announce_buf, sizeof(announce_buf),
 1398				        "%juMB (%ju %u byte sectors: %dH %dS/T %dC)",
 1399					(uintmax_t) (((uintmax_t)dp->secsize *
 (kgdb) print *periph
 $4 = {pinfo = {priority = 5, generation = 4, index = -1}, 
   periph_start = 0xc04553a8 <dastart>, 
   periph_oninval = 0xc0454d68 <daoninvalidate>, 
   periph_dtor = 0xc0454e04 <dacleanup>, periph_name = 0xc07ecce8 "da", 
   path = 0xc1a0a380, softc = 0xc1b1a400, unit_number = 0, 
   type = CAM_PERIPH_BIO, flags = 6, immediate_priority = 4294967295, 
   refcount = 2, ccb_list = {slh_first = 0x0}, periph_links = {
     sle_next = 0x0}, unit_links = {tqe_next = 0x0, tqe_prev = 0xc0836fcc}, 
   deferred_callback = 0, deferred_ac = 0}
 (kgdb) x /4b rdcap->length
 0xc19f4604:	0x18	0x00	0x00	0x00
 (kgdb) up
 #31 0xc044c115 in camisr (V_queue=0xc08aa00c)
     at /usr/src/sys/cam/cam_xpt.c:7072
 7072			(*ccb_h->cbfcnp)(ccb_h->path->periph, (union ccb *)ccb_h);
 (kgdb) l
 7067			} else if (runq) {
 7068				xpt_run_dev_sendq(ccb_h->path->bus);
 7069			}
 7070	
 7071			/* Call the peripheral driver's callback */
 7072			(*ccb_h->cbfcnp)(ccb_h->path->periph, (union ccb *)ccb_h);
 7073	
 7074			/* Raise IPL for while test */
 7075			s = splcam();
 7076		}
 (kgdb) print *ccb_h
 $8 = {pinfo = {priority = 5, generation = 13, index = -1}, xpt_links = {le = {
       le_next = 0x0, le_prev = 0xc1e15468}, sle = {sle_next = 0x0}, tqe = {
       tqe_next = 0x0, tqe_prev = 0xc1e15468}, stqe = {stqe_next = 0x0}}, 
   sim_links = {le = {le_next = 0x0, le_prev = 0xc08aa00c}, sle = {
       sle_next = 0x0}, tqe = {tqe_next = 0x0, tqe_prev = 0xc08aa00c}, stqe = {
       stqe_next = 0x0}}, periph_links = {le = {le_next = 0x0, le_prev = 0x0}, 
     sle = {sle_next = 0x0}, tqe = {tqe_next = 0x0, tqe_prev = 0x0}, stqe = {
       stqe_next = 0x0}}, retry_count = 4, cbfcnp = 0xc045570c <dadone>, 
   func_code = XPT_SCSI_IO, status = 1, path = 0xc1a0a380, path_id = 0, 
   target_id = 0, target_lun = 0, flags = 64, periph_priv = {entries = {{
         ptr = 0x1, field = 1, bytes = "\001\000\000"}, {ptr = 0x0, field = 0, 
         bytes = "\000\000\000"}}, bytes = "\001\000\000\000\000\000\000"}, 
   sim_priv = {entries = {{ptr = 0x0, field = 0, bytes = "\000\000\000"}, {
         ptr = 0x0, field = 0, bytes = "\000\000\000"}}, 
     bytes = "\000\000\000\000\000\000\000"}, timeout = 5000, timeout_ch = {
     callout = 0x0}}
 (kgdb) q
 


More information about the freebsd-usb mailing list