Re: [PATCH] imsm: always use set_migr_type to set type of migration

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Wed, 05 Oct 2011 11:59:50 +0200 Przemyslaw Czarnowski
<przemyslaw.hawrylewicz.czarnowski@xxxxxxxxx> wrote:

> For 'resync' besides the update of migration type (imsm_vol.migr_type
> structure) additionally status (imsm_dev.status) flag is set to
> DEV_VERIFY_AND_FIX. In order to clean up after migration, status flag
> must be cleared. For this reason, migration type shouldn't be set
> directly but via set_migr_type(). Otherwise status does not reflect
> the state of array.
> 
> Signed-off-by: Przemyslaw Czarnowski <przemyslaw.hawrylewicz.czarnowski@xxxxxxxxx>
> ---
>  super-intel.c |    8 ++++----
>  1 files changed, 4 insertions(+), 4 deletions(-)
> 
> diff --git a/super-intel.c b/super-intel.c
> index 3185e91..216ec21 100644
> --- a/super-intel.c
> +++ b/super-intel.c
> @@ -3112,7 +3112,7 @@ static void end_migration(struct imsm_dev *dev, __u8 map_state)
>  			}
>  
>  	dev->vol.migr_state = 0;
> -	dev->vol.migr_type = 0;
> +	set_migr_type(dev, 0);
>  	dev->vol.curr_migr_unit = 0;
>  	map->map_state = map_state;
>  }
> @@ -6124,7 +6124,7 @@ static void imsm_progress_container_reshape(struct intel_super *super)
>  		map->num_members = prev_disks;
>  		dev->vol.migr_state = 1;
>  		dev->vol.curr_migr_unit = 0;
> -		dev->vol.migr_type = MIGR_GEN_MIGR;
> +		set_migr_type(dev, MIGR_GEN_MIGR);
>  		for (i = prev_num_members;
>  		     i < map->num_members; i++)
>  			set_imsm_ord_tbl_ent(map, i, i);
> @@ -6174,7 +6174,7 @@ static int imsm_set_array_state(struct active_array *a, int consistent)
>  				if (0) {
>  				struct imsm_map *map2 = get_imsm_map(dev, 1);
>  				dev->vol.migr_state = 0;
> -				dev->vol.migr_type = 0;
> +				set_migr_type(dev, 0);
>  				dev->vol.curr_migr_unit = 0;
>  				memcpy(map, map2, sizeof_imsm_map(map2));
>  				super->updates_pending++;
> @@ -7053,7 +7053,7 @@ static int apply_reshape_container_disks_update(struct imsm_update_reshape *u,
>  			devices_to_reshape--;
>  			newdev->vol.migr_state = 1;
>  			newdev->vol.curr_migr_unit = 0;
> -			newdev->vol.migr_type = MIGR_GEN_MIGR;
> +			set_migr_type(newdev, MIGR_GEN_MIGR);
>  			newmap->num_members = u->new_raid_disks;
>  			for (i = 0; i < delta_disks; i++) {
>  				set_imsm_ord_tbl_ent(newmap,
> 
> --
> To unsubscribe from this list: send the line "unsubscribe linux-raid" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html


Applied, thanks.

NeilBrown

Attachment: signature.asc
Description: PGP signature


[Index of Archives]     [Linux RAID Wiki]     [ATA RAID]     [Linux SCSI Target Infrastructure]     [Linux Block]     [Linux IDE]     [Linux SCSI]     [Linux Hams]     [Device Mapper]     [Device Mapper Cryptographics]     [Kernel]     [Linux Admin]     [Linux Net]     [GFS]     [RPM]     [git]     [Yosemite Forum]


  Powered by Linux