Re: Blockbusting news, results get worse

From: John Bradford
Date: Thu Oct 30 2003 - 03:29:48 EST


Quote from Pavel Machek <pavel@xxxxxx>:
> Hi!
>
> > > >> or put it under heavy write workload and remove
> > > >> power.
> > > >>
> > > > Can you tell us more about what really happens to disk drives when the
> > > > power is cut while a block is being written? We engage in a lot of
> > > > uninformed speculation, and it would be nice if someone who really knows
> > > > told us....
> > > >
> > > > Do drives have enough capacitance under normal conditions to finish
> > > > writing the block? Does ECC on the drive detect that the block was bad
> > > > and so we don't need to detect it in the FS?
> > >
> > >
> > > Does it really matter to speculate about this?
> > >
> > > If you don't FLUSH CACHE, you have no guarantees your data is on the
> > > platter.
> >
> > I think that the idea that is floating around is to deliberately ruin
> > the formatting on part of the drive in order to simulate a bad block.
> >
> > Operation of disk drives immediately after a power failiure has been
> > discussed before, by the way:
> >
> > http://marc.theaimsgroup.com/?l=linux-kernel&m=100665153518652&w=2
>
> Well, that looks like pure speculation.
>
> BTW I *do* believe that powerfail can make the sector bad. Imagine you
> bump into bad sector during write, and need to reallocate...

See the rest of the thread.

I think the point is that if that happened, it would be outside the
scope of the solution being suggested, and something more elaborate
such as a battery backed cache is needed if you want to guard against
that situation.

Unfortunately, I think that the re-writing due to a bad sector
requirement is going to occur often enough to make any solution which
doesn't handle it a bit pointless :-(

John.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/