summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAdam Kwolek <adam.kwolek@intel.com>2011-06-09 13:00:55 +1000
committerNeilBrown <neilb@suse.de>2011-06-09 13:00:55 +1000
commit92144abfbe2a3a80ff41e29f903e544f78bb2481 (patch)
treeb46effddbee4c590fbe0852ced4b36c231f1aa39
parent1ab242d891e639f756a8f3be678e68d7d3d5b55d (diff)
downloadmdadm-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.c4
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;