diff options
Diffstat (limited to 'drivers/md/md.h')
-rw-r--r-- | drivers/md/md.h | 12 |
1 files changed, 10 insertions, 2 deletions
diff --git a/drivers/md/md.h b/drivers/md/md.h index 1c2063ccf48e..7b4a3c318cae 100644 --- a/drivers/md/md.h +++ b/drivers/md/md.h | |||
@@ -55,6 +55,7 @@ struct md_rdev { | |||
55 | int sb_loaded; | 55 | int sb_loaded; |
56 | __u64 sb_events; | 56 | __u64 sb_events; |
57 | sector_t data_offset; /* start of data in array */ | 57 | sector_t data_offset; /* start of data in array */ |
58 | sector_t new_data_offset;/* only relevant while reshaping */ | ||
58 | sector_t sb_start; /* offset of the super block (in 512byte sectors) */ | 59 | sector_t sb_start; /* offset of the super block (in 512byte sectors) */ |
59 | int sb_size; /* bytes in the superblock */ | 60 | int sb_size; /* bytes in the superblock */ |
60 | int preferred_minor; /* autorun support */ | 61 | int preferred_minor; /* autorun support */ |
@@ -193,8 +194,9 @@ static inline int is_badblock(struct md_rdev *rdev, sector_t s, int sectors, | |||
193 | return 0; | 194 | return 0; |
194 | } | 195 | } |
195 | extern int rdev_set_badblocks(struct md_rdev *rdev, sector_t s, int sectors, | 196 | extern int rdev_set_badblocks(struct md_rdev *rdev, sector_t s, int sectors, |
196 | int acknowledged); | 197 | int is_new); |
197 | extern int rdev_clear_badblocks(struct md_rdev *rdev, sector_t s, int sectors); | 198 | extern int rdev_clear_badblocks(struct md_rdev *rdev, sector_t s, int sectors, |
199 | int is_new); | ||
198 | extern void md_ack_all_badblocks(struct badblocks *bb); | 200 | extern void md_ack_all_badblocks(struct badblocks *bb); |
199 | 201 | ||
200 | struct mddev { | 202 | struct mddev { |
@@ -262,6 +264,7 @@ struct mddev { | |||
262 | sector_t reshape_position; | 264 | sector_t reshape_position; |
263 | int delta_disks, new_level, new_layout; | 265 | int delta_disks, new_level, new_layout; |
264 | int new_chunk_sectors; | 266 | int new_chunk_sectors; |
267 | int reshape_backwards; | ||
265 | 268 | ||
266 | atomic_t plug_cnt; /* If device is expecting | 269 | atomic_t plug_cnt; /* If device is expecting |
267 | * more bios soon. | 270 | * more bios soon. |
@@ -390,10 +393,13 @@ struct mddev { | |||
390 | * For external metadata, offset | 393 | * For external metadata, offset |
391 | * from start of device. | 394 | * from start of device. |
392 | */ | 395 | */ |
396 | unsigned long space; /* space available at this offset */ | ||
393 | loff_t default_offset; /* this is the offset to use when | 397 | loff_t default_offset; /* this is the offset to use when |
394 | * hot-adding a bitmap. It should | 398 | * hot-adding a bitmap. It should |
395 | * eventually be settable by sysfs. | 399 | * eventually be settable by sysfs. |
396 | */ | 400 | */ |
401 | unsigned long default_space; /* space available at | ||
402 | * default offset */ | ||
397 | struct mutex mutex; | 403 | struct mutex mutex; |
398 | unsigned long chunksize; | 404 | unsigned long chunksize; |
399 | unsigned long daemon_sleep; /* how many jiffies between updates? */ | 405 | unsigned long daemon_sleep; /* how many jiffies between updates? */ |
@@ -591,6 +597,7 @@ extern void md_write_start(struct mddev *mddev, struct bio *bi); | |||
591 | extern void md_write_end(struct mddev *mddev); | 597 | extern void md_write_end(struct mddev *mddev); |
592 | extern void md_done_sync(struct mddev *mddev, int blocks, int ok); | 598 | extern void md_done_sync(struct mddev *mddev, int blocks, int ok); |
593 | extern void md_error(struct mddev *mddev, struct md_rdev *rdev); | 599 | extern void md_error(struct mddev *mddev, struct md_rdev *rdev); |
600 | extern void md_finish_reshape(struct mddev *mddev); | ||
594 | 601 | ||
595 | extern int mddev_congested(struct mddev *mddev, int bits); | 602 | extern int mddev_congested(struct mddev *mddev, int bits); |
596 | extern void md_flush_request(struct mddev *mddev, struct bio *bio); | 603 | extern void md_flush_request(struct mddev *mddev, struct bio *bio); |
@@ -615,6 +622,7 @@ extern int md_run(struct mddev *mddev); | |||
615 | extern void md_stop(struct mddev *mddev); | 622 | extern void md_stop(struct mddev *mddev); |
616 | extern void md_stop_writes(struct mddev *mddev); | 623 | extern void md_stop_writes(struct mddev *mddev); |
617 | extern int md_rdev_init(struct md_rdev *rdev); | 624 | extern int md_rdev_init(struct md_rdev *rdev); |
625 | extern void md_rdev_clear(struct md_rdev *rdev); | ||
618 | 626 | ||
619 | extern void mddev_suspend(struct mddev *mddev); | 627 | extern void mddev_suspend(struct mddev *mddev); |
620 | extern void mddev_resume(struct mddev *mddev); | 628 | extern void mddev_resume(struct mddev *mddev); |