md: keep recovery_cp in mdp_superblock_s
authorXiao Ni <xni@redhat.com>
Fri, 15 Aug 2025 04:00:28 +0000 (12:00 +0800)
committerYu Kuai <yukuai3@huawei.com>
Sat, 16 Aug 2025 00:47:38 +0000 (08:47 +0800)
commit 907a99c314a5 ("md: rename recovery_cp to resync_offset") replaces
recovery_cp with resync_offset in mdp_superblock_s which is in md_p.h.
md_p.h is used in userspace too. So mdadm building fails because of this.
This patch revert this change.

Fixes: 907a99c314a5 ("md: rename recovery_cp to resync_offset")
Signed-off-by: Xiao Ni <xni@redhat.com>
Link: https://lore.kernel.org/linux-raid/20250815040028.18085-1-xni@redhat.com
Signed-off-by: Yu Kuai <yukuai3@huawei.com>
drivers/md/md.c
include/uapi/linux/raid/md_p.h

index 772cffe02ff5c99b9bab9e58a2747fc330a5a58d..3836fc7eff674d56e40cf56c05d64d506ab71e1f 100644 (file)
@@ -1423,7 +1423,7 @@ static int super_90_validate(struct mddev *mddev, struct md_rdev *freshest, stru
                else {
                        if (sb->events_hi == sb->cp_events_hi &&
                                sb->events_lo == sb->cp_events_lo) {
-                               mddev->resync_offset = sb->resync_offset;
+                               mddev->resync_offset = sb->recovery_cp;
                        } else
                                mddev->resync_offset = 0;
                }
@@ -1551,13 +1551,13 @@ static void super_90_sync(struct mddev *mddev, struct md_rdev *rdev)
        mddev->minor_version = sb->minor_version;
        if (mddev->in_sync)
        {
-               sb->resync_offset = mddev->resync_offset;
+               sb->recovery_cp = mddev->resync_offset;
                sb->cp_events_hi = (mddev->events>>32);
                sb->cp_events_lo = (u32)mddev->events;
                if (mddev->resync_offset == MaxSector)
                        sb->state = (1<< MD_SB_CLEAN);
        } else
-               sb->resync_offset = 0;
+               sb->recovery_cp = 0;
 
        sb->layout = mddev->layout;
        sb->chunk_size = mddev->chunk_sectors << 9;
index b1394628727758b627bd4ec3fb4b45e58b1304b9..ac74133a47688773d9aa75fab1ef376ddfe3da91 100644 (file)
@@ -173,7 +173,7 @@ typedef struct mdp_superblock_s {
 #else
 #error unspecified endianness
 #endif
-       __u32 resync_offset;    /* 11 resync checkpoint sector count          */
+       __u32 recovery_cp;      /* 11 resync checkpoint sector count          */
        /* There are only valid for minor_version > 90 */
        __u64 reshape_position; /* 12,13 next address in array-space for reshape */
        __u32 new_level;        /* 14 new level we are reshaping to           */