On Mon, Aug 10, 2015 at 2:46 PM, Carlos E. R.
On 2015-08-10 17:42, Greg Freemyer wrote:
Jan, a partial sector write isn't supposed to happen, but you're correct that doesn't mean it doesn't happen.
But when it happens it causes the ECC sector metadata to disagree with the sector contents. When the disk controller reads that sector it verifies the ECC and does it's best to correct the error (assuming it is just a few bits).
When that fails (as in your case), it generates a media error back to the kernel and it also flags the specific physical sector that is corrupt.
But that damage should not be permanent, I suppose. Writing that sector with data should correct it, right?
Agreed, but there are files (like RPMs) that are long lived and rarely if ever written. Depending on a chance write to the sector may never happen. hdparm has a "repair_sector" feature that can force good data to a specific sector that is known bad. If the error was caused by a bad write and nothing is actually wrong with the media (physical sector on the plater), then hdparm will bring it back to life. The trouble is it has no idea what the correct data is so it just fills the sector garbage. Greg
-- Cheers / Saludos,
Carlos E. R. (from 13.1 x86_64 "Bottle" at Telcontar)
-- To unsubscribe, e-mail: opensuse-factory+unsubscribe@opensuse.org To contact the owner, e-mail: opensuse-factory+owner@opensuse.org