On Sun, 28 Dec 2008, Carsten Aulbert wrote:
>> ZFS does check the data correctness (at the CPU) for each read while
>> HW raid depends on the hardware detecting a problem, and even if the
>> data is ok when read from disk, it may be corrupted by the time it
>> makes it to the CPU.
>
> AFAIK this is not done during the normal operation (unless a disk asked
> for a sector cannot get this sector).

ZFS checksum validates all returned data.  Are you saying that this 
fact is incorrect?

> That's exactly what volume checking for standard HW controllers does as
> well. Read all data and compare it with parity.

What if the data was corrupted prior to parity generation?

> This is exactly the point why RAID6 should always be chosen over RAID5,
> because in the event of a wrong parity check and RAID5 the controller
> can only say, oops, I have found a problem but cannot correct it - since
> it does not know if the parity is correct or any of the n data bits. In
> RAID6 you have redundant parity, thus the controller can find out if the
> parity was correct or not. At least I think that to be true for Areca
> controllers :)

Good point.  Luckily, ZFS's raidz does not have this problem since it 
is able to tell if the "corrected" data is actually correct (within 
the checksum computation's margin for error). If applying parity does 
not result in the correct checksum, then it knows that the data is 
toast.

Bob
======================================
Bob Friesenhahn
bfrie...@simple.dallas.tx.us, http://www.simplesystems.org/users/bfriesen/
GraphicsMagick Maintainer,    http://www.GraphicsMagick.org/

_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to