NetBSD-Bugs archive
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]
kern/39927: bad sector handling broken on wd; failed reads crash the kernel.
>Number: 39927
>Category: kern
>Synopsis: Bad sector handling broken on wd
>Confidential: no
>Severity: critical
>Priority: high
>Responsible: kern-bug-people
>State: open
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Sat Nov 15 20:15:00 +0000 2008
>Originator: Christos Zoulas
>Release: NetBSD 5.99.01
>Organization:
None but trying.
>Environment:
System: NetBSD shiny.astron.com 5.99.01 NetBSD 5.99.01 (SHINY) #55: Fri Nov 14
20:27:39 EST 2008
root@:/net/shiny/src-6/NetBSD/cvsroot/src/sys/arch/i386/compile/SHINY i386
Architecture: i386
Machine: i386
>Description:
When a drive has bad sectors the wd code re-tries, but wdrestart
is called via a softintr and it also tries to ltsleep which is not
going to work. So you get an assertion. Kernels from january this
year work, but once they give up, there is a secondary failure
in the filesystem code where we die in ffs_freefile. This happens
even when you cat or stat the file that has the bad blocks.
>How-To-Repeat:
get a disk with bad sectors or simulate a read failure on a particular
fsbn.
>Fix:
don't use a softintr to dispatch retries; fix the filesystem code
so that it does not die for no reason. It is really frustrating
to have a disk going back and the OS dying on you.
Home |
Main Index |
Thread Index |
Old Index