Messages in this thread | | | Subject | RE: Disk write cache (Was: Hyper-Threading Vulnerability) | Date | Wed, 18 May 2005 17:45:23 +0800 | From | "Lincoln Dale \(ltd\)" <> |
| |
Eric,
> On 5/16/05, Robert Hancock <hancockr@shaw.ca> wrote: > > If the power to the drive is truly just cut, then this is basically > > what will happen. However, I have heard, for what it's > worth, that in > > many cases if you pull the AC power from a typical PC, the > Power Good > > signal from the PSU will be de-asserted, which triggers the > Reset line > > on all the buses, which triggers the ATA reset line, which triggers > > the drive to finish writing out the sector it is doing. There is > > likely enough capacitance in the power supply to do that > before the voltage drops off. > > Yes, but as you said this isn't a power loss event. It is a > hard reset with a full write cache, which all drives on the > market today respond to by flushing the cache. > > According to the spec the time to flush can exceed 30s, so > your PSU better have some honkin caps on it to ensure data > integrity when you yank the power cord out of the wall.
why don't drive vendors create firmware which reserved a cache-sized (e.g. 2MB) hole of internal drive space somewhere for such an event, and a "cache flush caused by hard-reset" simply caused it to write the cache to a fixed (contiguous) area of disk.
the same drive firmware on power-on could check that area and 'write back' the data to the correct locations.
all said and done, why wouldn't a vendor (lets just say "Maxtor" :) ) implement something like this and market it as a feature? i'd happily spend a few extra bucks for something that given a modern PSU providing a few Hz of power (e.g. 50msec) provided higher data reliability in case of power failure..
cheers,
lincoln. - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
| |