Re: [GIT PULL v2] md-6.18-20250909

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

 



On 9/9/25 11:13 AM, Yu Kuai wrote:
> Hi, Jens
> 
> Redundant data is used to enhance data fault tolerance, and the storage
> method for redundant data vary depending on the RAID levels. And it's
> important to maintain the consistency of redundant data.
> 
> Bitmap is used to record which data blocks have been synchronized and which
> ones need to be resynchronized or recovered. Each bit in the bitmap
> represents a segment of data in the array. When a bit is set, it indicates
> that the multiple redundant copies of that data segment may not be
> consistent. Data synchronization can be performed based on the bitmap after
> power failure or readding a disk. If there is no bitmap, a full disk
> synchronization is required.
> 
> Due to known performance issues with md-bitmap and the unreasonable
> implementations:
> 
>  - self-managed IO submitting like filemap_write_page();
>  - global spin_lock
>  - ...
> 
> I have decided not to continue optimizing based on the current bitmap
> implementation, this new bitmap is invented without locking from IO fast
> path and can be used with fast disks.
> 
> Key features for the new bitmap:
>  - IO fastpath is lockless, if user issues lots of write IO to the same
>    bitmap bit in a short time, only the first write has additional 
>    overhead to update bitmap bit, no additional overhead for the following
>    writes;
>  - support only resync or recover written data, means in the case creating
>    new array or replacing with a new disk, there is no need to do a full
>    disk resync/recovery;

Much better! Though I suspect you forgot to add more where you have
the "..." above, I just removed it.

Pulled, thanks.

-- 
Jens Axboe




[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