diff options
author | Adam Kwolek <adam.kwolek@intel.com> | 2011-06-09 13:00:55 +1000 |
---|---|---|
committer | NeilBrown <neilb@suse.de> | 2011-06-09 13:00:55 +1000 |
commit | 92144abfbe2a3a80ff41e29f903e544f78bb2481 (patch) | |
tree | b46effddbee4c590fbe0852ced4b36c231f1aa39 | |
parent | 1ab242d891e639f756a8f3be678e68d7d3d5b55d (diff) | |
download | mdadm-92144abfbe2a3a80ff41e29f903e544f78bb2481.tar.gz |
imsm: FIX: Do not use pba_of_lba0 for copy position calculation
imsm_manage_reshape() should not shift start copy position.
This offset is passed to manage reshape function /and it is used/
as input parameter in offsets table already.
Signed-off-by: Adam Kwolek <adam.kwolek@intel.com>
Signed-off-by: NeilBrown <neilb@suse.de>
-rw-r--r-- | super-intel.c | 4 |
1 files changed, 1 insertions, 3 deletions
diff --git a/super-intel.c b/super-intel.c index fad90d2..5c120fa 100644 --- a/super-intel.c +++ b/super-intel.c @@ -8764,9 +8764,7 @@ static int imsm_manage_reshape( if ((current_position + next_step) > max_position) next_step = max_position - current_position; - start = (__le32_to_cpu(map_src->pba_of_lba0) + - __le32_to_cpu(dev->reserved_blocks) + - current_position) * 512; + start = current_position * 512; /* allign reading start to old geometry */ start_buf_shift = start % old_data_stripe_length; |