Re: Why not just return an error?

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

 





On 07/10/16 18:44, Dark Penguin wrote:

I actually wanted to ask about that. Can you really ddrescue a drive
with a "hole" in it, re-add it and expect it to work?.. What happens if
you try to read from that "hole" again? And while I'm talking about
re-adding, when does it become impossible to "re-add" a drive?..

If you want to do some kernel development work, this is something you can do something about :-)

ddrescue creates a log of sectors that failed to copy. I've been thinking a bit about this, not least because other people have mentioned it.

Modern disk partitioning tools usually leave a chunk of space. What we want is some way of making ddrescue dump a signature on the disk, along with a list of all blocks that failed to copy. Then we need to patch the low-level disk access code so that it reads this list of "bad blocks" and returns a read error if any attempt is made to read one. If a block is written, it's removed from the list. In effect, this is a "bad block" list, only instead of being at the disk firmware level, it's at the OS's disk driver level.

That way, at least you know, if you copy a damaged disk with errors, then the filesystem layer will be told that the file is damaged, rather than returning duff data with no indication that it is duff.

THIS IS NOT THERE TODAY, but if you want a kernel project, this isn't a bad one. This will mean that you can recover a broken raid with no data loss, provided you have enough drives to be able to assemble a redundant array, and you aren't unlucky enough to have two drives have an error in the same place.

Cheers,
Wol
--
To unsubscribe from this list: send the line "unsubscribe linux-raid" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux