NetBSD-Bugs archive

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

Re: kern/2727 (Writing to SCSI tape panics system with 'done < 0; strategy broken message)



On Tue, Sep 02, 2008 at 07:15:23AM +0000, David Holland wrote:
> On Tue, Sep 02, 2008 at 07:07:02AM +0000, dholland%NetBSD.org@localhost wrote:
>  > State-Changed-From-To: suspended->open
>  > While we're looking at st(4)...
> 
> So... here, I think the problem with Manuel's 2002 patch (which has
> been committed at some point) is that it wasn't meant to deal with an
> error condition. But I note that st.c now has this in stdone:
> 
>       bp->b_error = error;
>       bp->b_resid = xs->resid;
>       /*
>        * buggy device ? A SDLT320 can report an info
>        * field of 0x3de8000 on a Media Error/Write Error
>        * for this CBD: 0x0a 00 00 80 00 00
>        */
>       if (bp->b_resid > bp->b_bcount || bp->b_resid < 0)
>               bp->b_resid = bp->b_bcount;
> 
> which will both avoid a panic and also prevent upper-layer code from
> thinking the write went through.
> 
> So I think this PR can be closed. Manuel? Anyone else? Is the

Not yet, there's still a path that can lead to failure. I've debugged
this with a user running into it and have some patch. I need to clean it up
and request feedback on tech-kern.

-- 
Manuel Bouyer <bouyer%antioche.eu.org@localhost>
     NetBSD: 26 ans d'experience feront toujours la difference
--


Home | Main Index | Thread Index | Old Index