Hi, Jens!

在 2025/02/27 15:54, Zheng Qixing 写道:
From: Zheng Qixing <zhengqix...@huawei.com>

Hi,

during RAID feature implementation testing, we found several bugs
in badblocks.

This series contains bugfixes and cleanups for MD RAID badblocks
handling code.

V2:
         - patch 4: add a description of the issue
         - patch 5: add comment of parital setting
         - patch 6: add fix tag
         - patch 10: two code style modifications
         - patch 11: keep original functionality of rdev_clear_badblocks(),
           functionality was incorrectly modified in V1.
        - patch 1-10 and patch 12 are reviewed by Yu Kuai
          <yuku...@huawei.com>
        - patch 1, 3, 5, 6, 8, 9, 10, 12 are acked by Coly Li
          <col...@kernel.org>

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 boolean 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


This set contains fixes that are found by testing mdraid, please
consider this set for the next merge window, or I can apply it to
md-6.15.

Thanks,
Kuai

  block/badblocks.c             | 322 +++++++++++++---------------------
  drivers/block/null_blk/main.c |  16 +-
  drivers/md/md.c               |  48 ++---
  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, 183 insertions(+), 266 deletions(-)



Reply via email to