NetBSD-Bugs archive

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

kern/47097: ahcisata(4) triggers panic when disk I/O error is caused



>Number:         47097
>Category:       kern
>Synopsis:       ahcisata(4) triggers panic when disk I/O error is caused
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Oct 20 15:50:00 +0000 2012
>Originator:     Takuya SHIOZAKI
>Release:        trunk
>Organization:
>Environment:
NetBSD ichigo 6.99.11 NetBSD 6.99.11 (GENERIC) #0: Mon Sep 24 11:49:55 JST 2012 
 root@aoi:/usr/home/current-build/obj/sys/arch/i386/compile/GENERIC i386
>Description:
when disk I/O error is caused, ahcisata(4) seems to call tsleep() under 
interrupt context and it triggers panic.

call trace is here:

vpanic
kern_assert
callout_halt
sleepq_block
ahci_do_reset_drive
ahci_reset_drive
wddone
ahci_bio_complete
ahci_intr_port
ahci_intr

>How-To-Repeat:
use ahcisata driver with a nearly broken disk.
>Fix:
probably, don't use tsleep() in ahci_do_reset_drive() or don't call drv_done 
under interrupt context.  we need ata(9) manpage.



Home | Main Index | Thread Index | Old Index