diff options
author | NeilBrown <neilb@cse.unsw.edu.au> | 2005-09-09 19:23:45 -0400 |
---|---|---|
committer | Linus Torvalds <torvalds@g5.osdl.org> | 2005-09-09 19:39:10 -0400 |
commit | 36fa30636fb84b209210299684e1be66d9e58217 (patch) | |
tree | 28a7473238932f1e7ade1a5a5ec67a113b6d6205 /include/linux/raid | |
parent | 6a07997fc34ac15a1c5dc650285d79b7604a2276 (diff) |
[PATCH] md: all hot-add and hot-remove of md intent logging bitmaps
Both file-bitmaps and superblock bitmaps are supported.
If you add a bitmap file on the array device, you lose.
This introduces a 'default_bitmap_offset' field in mddev, as the ioctl used
for adding a superblock bitmap doesn't have room for giving an offset. Later,
this value will be setable via sysfs.
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.h | 10 |
1 files changed, 10 insertions, 0 deletions
diff --git a/include/linux/raid/md_k.h b/include/linux/raid/md_k.h index 8c14ba565a45..817062bf7352 100644 --- a/include/linux/raid/md_k.h +++ b/include/linux/raid/md_k.h | |||
@@ -278,6 +278,10 @@ struct mddev_s | |||
278 | * start of bitmap. May be | 278 | * start of bitmap. May be |
279 | * negative, but not '0' | 279 | * negative, but not '0' |
280 | */ | 280 | */ |
281 | long default_bitmap_offset; /* this is the offset to use when | ||
282 | * hot-adding a bitmap. It should | ||
283 | * eventually be settable by sysfs. | ||
284 | */ | ||
281 | 285 | ||
282 | struct list_head all_mddevs; | 286 | struct list_head all_mddevs; |
283 | }; | 287 | }; |
@@ -314,6 +318,12 @@ struct mdk_personality_s | |||
314 | int (*resize) (mddev_t *mddev, sector_t sectors); | 318 | int (*resize) (mddev_t *mddev, sector_t sectors); |
315 | int (*reshape) (mddev_t *mddev, int raid_disks); | 319 | int (*reshape) (mddev_t *mddev, int raid_disks); |
316 | int (*reconfig) (mddev_t *mddev, int layout, int chunk_size); | 320 | int (*reconfig) (mddev_t *mddev, int layout, int chunk_size); |
321 | /* quiesce moves between quiescence states | ||
322 | * 0 - fully active | ||
323 | * 1 - no new requests allowed | ||
324 | * others - reserved | ||
325 | */ | ||
326 | void (*quiesce) (mddev_t *mddev, int state); | ||
317 | }; | 327 | }; |
318 | 328 | ||
319 | 329 | ||