aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/raid
diff options
context:
space:
mode:
authorNeilBrown <neilb@cse.unsw.edu.au>2005-06-21 20:17:13 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-06-21 22:07:43 -0400
commit57afd89f98a990747445f01c458ecae64263b2f8 (patch)
treecab9f5941f32299bc97936e111f6552ebcee9cf6 /include/linux/raid
parent06d91a5fe0b50c9060e70bdf7786f8a3c66249db (diff)
[PATCH] md: improve the interface to sync_request
1/ change the return value (which is number-of-sectors synced) from 'int' to 'sector_t'. The number of sectors is usually easily small enough to fit in an int, but if resync needs to abort, it may want to return the total number of remaining sectors, which could be large. Also errors cannot be returned as negative numbers now, so use 0 instead 2/ Add a 'skipped' return parameter to allow the array to report that it skipped the sectors. This allows md to take this into account in the speed calculations. Currently there is no important skipping, but the bitmap-based-resync that is coming will use this. Signed-off-by: Neil Brown <neilb@cse.unsw.edu.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'include/linux/raid')
-rw-r--r--include/linux/raid/md_k.h2
1 files changed, 1 insertions, 1 deletions
diff --git a/include/linux/raid/md_k.h b/include/linux/raid/md_k.h
index d92db54255a3..bce0032decff 100644
--- a/include/linux/raid/md_k.h
+++ b/include/linux/raid/md_k.h
@@ -298,7 +298,7 @@ struct mdk_personality_s
298 int (*hot_add_disk) (mddev_t *mddev, mdk_rdev_t *rdev); 298 int (*hot_add_disk) (mddev_t *mddev, mdk_rdev_t *rdev);
299 int (*hot_remove_disk) (mddev_t *mddev, int number); 299 int (*hot_remove_disk) (mddev_t *mddev, int number);
300 int (*spare_active) (mddev_t *mddev); 300 int (*spare_active) (mddev_t *mddev);
301 int (*sync_request)(mddev_t *mddev, sector_t sector_nr, int go_faster); 301 sector_t (*sync_request)(mddev_t *mddev, sector_t sector_nr, int *skipped, int go_faster);
302 int (*resize) (mddev_t *mddev, sector_t sectors); 302 int (*resize) (mddev_t *mddev, sector_t sectors);
303 int (*reshape) (mddev_t *mddev, int raid_disks); 303 int (*reshape) (mddev_t *mddev, int raid_disks);
304 int (*reconfig) (mddev_t *mddev, int layout, int chunk_size); 304 int (*reconfig) (mddev_t *mddev, int layout, int chunk_size);