NetBSD-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

kern/44283: ses(4) panics the kernel when detached

>Number:         44283
>Category:       kern
>Synopsis:       ses(4) panics the kernel when detached
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Mon Dec 27 14:10:00 +0000 2010
>Originator:     Björn Johannesson
>Release:        5.99.41
NetBSD fafner 5.99.41 NetBSD 5.99.41 (GENERIC) #0: Thu Dec 23 18:11:13 CET 2010 
 bjorn@fafner:/usr/obj/sys/arch/i386/compile/GENERIC i386
When a ses(4) device is detached the kernel panics.

I recently bought a new external USB-drive:
sd6 at scsibus3 target 0 lun 0: <WD, My Book 1130, 1012> disk fixed
sd6: fabricating a geometry
sd6: 2794 GB, 357694 cyl, 64 head, 32 sec, 4096 bytes/sect x 732558336 sectors
it also presents it self as a ses(4)device:
ses1 at scsibus3 target 0 lun 1: <WD, SES Device, 1012> enclosure services fixed
ses1: SCSI-3 SES Device

When you unplug the drive the kernel panics:
NB: The disk was attached to another port when this crash occured so it's 
called sd5/ses0 here.
sd5: detached
panic: config_detach: forced detach of ses0 failed (45)
fatal breakpoint trap in supervisor mode
trap type 1 code 0 eip c022baf4 cs 8 eflags 246 cr2 bb940000 ilevel 0

#0  0xc04bb5f1 in cpu_reboot ()
#1  0xc061cbe2 in panic ()
#2  0xc060d72b in config_detach ()
#3  0xc05d924f in scsipi_target_detach ()
#4  0xc05d7734 in scsibusdetach ()
#5  0xc060d5f2 in config_detach ()
#6  0xc06a4491 in umass_detach ()
#7  0xc060d5f2 in config_detach ()
#8  0xc06ad8ba in usb_disconnect_port ()
#9  0xc069215b in uhub_explore ()
#10 0xc06ab9e5 in usb_discover ()
#11 0xc06abd57 in usb_event_thread ()
#12 0xc0100321 in lwp_trampoline ()

Hot-unplug a usb disk with a ses(4)-function.
A workaround is to disable ses(4) with ukc or compile a kernel without ses(4).

Home | Main Index | Thread Index | Old Index