lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <b23b6075-e177-4a85-b34b-e7f5feb95291@youngman.org.uk>
Date: Tue, 3 Jun 2025 21:27:35 +0100
From: anthony <antmbox@...ngman.org.uk>
To: David Niklas <simd@...mail.net>, Wol <antlists@...ngman.org.uk>
Cc: Linux RAID <linux-raid@...r.kernel.org>, linux-kernel@...r.kernel.org
Subject: Re: Need help increasing raid scan efficiency.

On 03/06/2025 21:04, David Niklas wrote:
> Searching online turned up raid6check.
> https://unix.stackexchange.com/questions/137384/raid6-scrubbing- 
> mismatch-repair
> 
> But the people there also pointed out that Linux's raid repair operation
> only recalculates the parity. I would have thought that it did a best of
> 3 option. I mean, that's a big part of why we have RAID6 instead of RAID5,
> right?

 From what I remember of raid6check, it actually does a proper raid 6 
calculation to recover the damaged data.

Raid 5 certainly just recalculates the parity, but it doesn't have any 
choice. Because it can only reconstruct ONE piece of information, it can 
detect the corruption, but it has no idea WHAT is corrupted. So it 
assumes (with good reason) that it's the parity and re-calculates it. 
Where raid 5 scores is if you lose a block, or a drive, or whatever, it 
is told what has been lost and can recreate it. If your data is 
corrupted, however, it has two pieces of missing information ("what" and 
"where"), and can only reconstruct one, so it assumes it's the parity 
that's been lost.

Because raid-6 has two levels of redundancy, if ONE block is damaged, it 
can work out both what and where, which is what raid6check does.

I've done it slightly differently, I've got raid-5 sat on top of 
dm-integrity, so if a disk gets corrupted dm-integrity will simply 
return a read failure, and the raid doesn't have to work out what's been 
corrupted. I've got a different problem at the moment - my array has 
assembled itself as three spares, so I've got to fix that ... :-(

Cheers,
Wol

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ