From 2a24dc1b0988a7d924de6339754d4160762a61f7 Mon Sep 17 00:00:00 2001 From: Pawel Baldysiak Date: Wed, 26 Apr 2017 11:08:07 +0200 Subject: [RHEL7.5 PATCH 103/169] IMSM: Initialize my_vol_raid_dev_num during vol creation This field was not initialized so far. This ID needs to be unique for every newly created array in container. Signed-off-by: Pawel Baldysiak Signed-off-by: Jes Sorensen --- super-intel.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/super-intel.c b/super-intel.c index fbff215..36f77d3 100644 --- a/super-intel.c +++ b/super-intel.c @@ -232,8 +232,13 @@ struct imsm_super { __u32 orig_family_num; /* 0x40 - 0x43 original family num */ __u32 pwr_cycle_count; /* 0x44 - 0x47 simulated power cycle count for array */ __u32 bbm_log_size; /* 0x48 - 0x4B - size of bad Block Mgmt Log in bytes */ -#define IMSM_FILLERS 35 - __u32 filler[IMSM_FILLERS]; /* 0x4C - 0xD7 RAID_MPB_FILLERS */ + __u16 num_raid_devs_created; /* 0x4C - 0x4D Used for generating unique + * volume IDs for raid_dev created in this array + * (starts at 1) + */ + __u16 filler1; /* 0x4E - 0x4F */ +#define IMSM_FILLERS 34 + __u32 filler[IMSM_FILLERS]; /* 0x50 - 0xD7 RAID_MPB_FILLERS */ struct imsm_disk disk[1]; /* 0xD8 diskTbl[numDisks] */ /* here comes imsm_dev[num_raid_devs] */ /* here comes BBM logs */ @@ -5368,6 +5373,8 @@ static int init_super_imsm_volume(struct supertype *st, mdu_array_info_t *info, set_imsm_ord_tbl_ent(map, i, IMSM_ORD_REBUILD); } mpb->num_raid_devs++; + mpb->num_raid_devs_created++; + dev->my_vol_raid_dev_num = mpb->num_raid_devs_created; if (s->consistency_policy <= CONSISTENCY_POLICY_RESYNC) { dev->rwh_policy = RWH_OFF; -- 2.7.4