Re: [PATCH 00/12] badblocks: bugfix and cleanup for badblocks

From: Coly Li
Date: Fri Feb 21 2025 - 06:52:59 EST


On Fri, Feb 21, 2025 at 04:10:57PM +0800, Zheng Qixing wrote:
> From: Zheng Qixing <zhengqixing@xxxxxxxxxx>
>
> During RAID feature implementation testing, we found several bugs
> in badblocks.
>
> This series contains bugfixes and cleanups for MD RAID badblocks
> handling code.
>
> Li Nan (8):
> badblocks: Fix error shitf ops
> badblocks: factor out a helper try_adjacent_combine
> badblocks: attempt to merge adjacent badblocks during
> ack_all_badblocks
> badblocks: return error directly when setting badblocks exceeds 512
> badblocks: return error if any badblock set fails
> badblocks: fix the using of MAX_BADBLOCKS
> badblocks: try can_merge_front before overlap_front
> badblocks: fix merge issue when new badblocks align with pre+1
>
> Zheng Qixing (4):
> badblocks: fix missing bad blocks on retry in _badblocks_check()
> badblocks: return boolen from badblocks_set() and badblocks_clear()
> md: improve return types of badblocks handling functions
> badblocks: use sector_t instead of int to avoid truncation of
> badblocks length
>

Thank you all for the testing and fix up!

Coly Li


> block/badblocks.c | 317 +++++++++++++---------------------
> drivers/block/null_blk/main.c | 19 +-
> drivers/md/md.c | 47 +++--
> drivers/md/md.h | 14 +-
> drivers/md/raid1-10.c | 2 +-
> drivers/md/raid1.c | 10 +-
> drivers/md/raid10.c | 14 +-
> drivers/nvdimm/badrange.c | 2 +-
> drivers/nvdimm/nd.h | 2 +-
> drivers/nvdimm/pfn_devs.c | 7 +-
> drivers/nvdimm/pmem.c | 2 +-
> include/linux/badblocks.h | 10 +-
> 12 files changed, 181 insertions(+), 265 deletions(-)
>
> --
> 2.39.2
>