Hi Jens, Please consider pulling the following changes for md-next on top of your for-6.7/block branch. The major changes are: 1. Rewrite mddev_suspend(), by Yu Kuai; 2. Simplify md_seq_ops, by Yu Kuai; 3. Reduce unnecessary locking array_state_store(), by Mariusz Tkaczyk. Thanks, Song The following changes since commit ceb0416383988dbd5decd6a70141a3507732c160: md: replace deprecated strncpy with memcpy (2023-09-25 14:36:41 -0700) are available in the Git repository at: https://git.kernel.org/pub/scm/linux/kernel/git/song/md.git tags/md-next-20231012 for you to fetch changes up to 9164e4a5af9c5587f8fdddeee30c615d21676e92: Merge branch 'md-suspend-rewrite' into md-next (2023-10-10 19:23:32 -0700) ---------------------------------------------------------------- Mariusz Tkaczyk (1): md: do not require mddev_lock() for all options in array_state_store() Song Liu (1): Merge branch 'md-suspend-rewrite' into md-next Yu Kuai (22): md: factor out a helper from mddev_put() md: simplify md_seq_ops md/raid1: don't split discard io for write behind md: use READ_ONCE/WRITE_ONCE for 'suspend_lo' and 'suspend_hi' md/raid5-cache: use READ_ONCE/WRITE_ONCE for 'conf->log' md: replace is_md_suspended() with 'mddev->suspended' in md_check_recovery() md: add new helpers to suspend/resume array md: add new helpers to suspend/resume and lock/unlock array md/dm-raid: use new apis to suspend array md/md-bitmap: use new apis to suspend array for location_store() md/raid5-cache: use new apis to suspend array md/raid5: use new apis to suspend array md: use new apis to suspend array for sysfs apis md: use new apis to suspend array for adding/removing rdev from state_store() md: use new apis to suspend array for ioctls involed array reconfiguration md: use new apis to suspend array before mddev_create/destroy_serial_pool md: cleanup mddev_create/destroy_serial_pool() md/md-linear: cleanup linear_add() md/raid5: replace suspend with quiesce() callback md: suspend array in md_start_sync() if array need reconfiguration md: remove old apis to suspend the array md: rename __mddev_suspend/resume() back to mddev_suspend/resume() drivers/md/dm-raid.c | 10 ++--- drivers/md/md-autodetect.c | 4 +- drivers/md/md-bitmap.c | 18 ++++----- drivers/md/md-linear.c | 2 - drivers/md/md.c | 399 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++----------------------------------------------------------------------------------------------- drivers/md/md.h | 43 +++++++++++++++----- drivers/md/raid1.c | 3 +- drivers/md/raid5-cache.c | 64 ++++++++++++++--------------- drivers/md/raid5.c | 56 ++++++++++--------------- 9 files changed, 287 insertions(+), 312 deletions(-)