Re: [RFC PATCH 0/5] md/raid1: introduce a new sync action to repair badblocks
Roman Mamedov <[email protected]>
| Newsgroups | gmane.linux.raid,gmane.linux.kernel |
|---|---|
| Message-ID | <20251231161130.21ffe50f@nvm> |
On Wed, 31 Dec 2025 15:09:47 +0800 Zheng Qixing <[email protected]> wrote: > From: Zheng Qixing <[email protected]> > > In RAID1, some sectors may be marked as bad blocks due to I/O errors. > In certain scenarios, these bad blocks might not be permanent, and > issuing I/Os again could succeed. > > To address this situation, a new sync action ('rectify') introduced > into RAID1 , allowing users to actively trigger the repair of existing > bad blocks and clear it in sys bad_blocks. > > When echo rectify into /sys/block/md*/md/sync_action, a healthy disk is > selected from the array to read data and then writes it to the disk where > the bad block is located. If the write request succeeds, the bad block > record can be cleared. Could you also check here that it reads back successfully, and only then clear? Otherwise there are cases when the block won't read even after rewriting it. Side note, on some hardware it might be necessary to rewrite a larger area around the problematic block, to finally trigger a remap. Not 512B, but at least the native sector size, which is often 4K. -- With respect, Roman