Re: [RFC v2 0/5] md/raid1: introduce a new sync action to repair badblocks
Zheng Qixing <[email protected]>
| Newsgroups | gmane.linux.raid,gmane.linux.kernel |
|---|---|
| Message-ID | <[email protected]> |
在 2026/2/4 0:31, Christoph Hellwig 写道: > On Tue, Feb 03, 2026 at 04:08:23PM +0800, Zheng Qixing wrote: >> Hi, >> >> 在 2026/2/3 15:31, Christoph Hellwig 写道: >>> Just curious, but what kind of devices do you see that have >>> permanent bad blocks at a fixed location that are not fixed by >>> rewriting the sector? >> The bad_blocks entries record sectors where I/O failed, which >> indicates that the device-internal remapping did not succeed >> at that time. >> >> `rectify` does not assume a permanently bad or fixed LBA. Its >> purpose is to trigger an additional rewrite, giving the underlying >> device (e.g. FTL or firmware) another opportunity to perform its >> own remapping. > Well, what devices do you see where writes fail, but rewrites > fix them? I understand your concerns, but I do not have a concrete example tied to a specific device model... The intent here is to provide an additional rewrite opportunity, which allows the write path to be exercised again and gives the underlying device or stack a chance to recover or remap the affected range. For remote storage devices, I/O may fail due to network or transport issues. If the final attempt fails, MD can record the affected range in bad_blocks. This behavior does not appear to be tied to a specific device model. For local storage, some controllers may have limitations or corner cases in their remapping mechanisms. In such cases, a sector that could potentially be recovered may be marked as bad, leaving no opportunity for a subsequent successful rewrite.