summaryrefslogtreecommitdiffstats
path: root/mdadm.h
diff options
context:
space:
mode:
authorNeil Brown <neilb@suse.de>2007-12-14 20:14:16 +1100
committerNeil Brown <neilb@suse.de>2007-12-14 20:14:16 +1100
commit68c7d6d790f856b4e8301d0afa7fc6873a0d4bb8 (patch)
tree56f8b050b39fb8008a8b25310fc6f9609796fc26 /mdadm.h
parentdf37ffc0393b919ba5607bb48b2eaf2f9a1832d7 (diff)
downloadmdadm-68c7d6d790f856b4e8301d0afa7fc6873a0d4bb8.tar.gz
mdadm-68c7d6d790f856b4e8301d0afa7fc6873a0d4bb8.tar.xz
mdadm-68c7d6d790f856b4e8301d0afa7fc6873a0d4bb8.zip
Add 'supertype' arg to almost all metadata methods.
The 'superblock' will be moved into this structure soon.
Diffstat (limited to 'mdadm.h')
-rw-r--r--mdadm.h23
1 files changed, 12 insertions, 11 deletions
diff --git a/mdadm.h b/mdadm.h
index de71b55..bf583b4 100644
--- a/mdadm.h
+++ b/mdadm.h
@@ -341,19 +341,20 @@ extern char *map_dev(int major, int minor, int create);
extern struct superswitch {
- void (*examine_super)(void *sbv, char *homehost);
- void (*brief_examine_super)(void *sbv);
- void (*detail_super)(void *sbv, char *homehost);
- void (*export_super)(void *sbv);
- void (*brief_detail_super)(void *sbv);
- void (*uuid_from_super)(int uuid[4], void *sbv);
- void (*getinfo_super)(struct mdinfo *info, void *sbv);
- int (*match_home)(void *sbv, char *homehost);
- int (*update_super)(struct mdinfo *info, void *sbv, char *update,
+ void (*examine_super)(struct supertype *st, void *sbv, char *homehost);
+ void (*brief_examine_super)(struct supertype *st, void *sbv);
+ void (*detail_super)(struct supertype *st, void *sbv, char *homehost);
+ void (*export_super)(struct supertype *st, void *sbv);
+ void (*brief_detail_super)(struct supertype *st, void *sbv);
+ void (*uuid_from_super)(struct supertype *st, int uuid[4], void *sbv);
+ void (*getinfo_super)(struct supertype *st, struct mdinfo *info, void *sbv);
+ int (*match_home)(struct supertype *st, void *sbv, char *homehost);
+ int (*update_super)(struct supertype *st, struct mdinfo *info,
+ void *sbv, char *update,
char *devname, int verbose,
int uuid_set, char *homehost);
int (*init_super)(struct supertype *st, void **sbp, mdu_array_info_t *info, unsigned long long size, char *name, char *homehost, int *uuid);
- void (*add_to_super)(void *sbv, mdu_disk_info_t *dinfo);
+ void (*add_to_super)(struct supertype *st, void *sbv, mdu_disk_info_t *dinfo);
int (*store_super)(struct supertype *st, int fd, void *sbv);
int (*write_init_super)(struct supertype *st, void *sbv, mdu_disk_info_t *dinfo, char *devname);
int (*compare_super)(void **firstp, void *secondv);
@@ -365,7 +366,7 @@ extern struct superswitch {
unsigned long long size, int may_change, int major);
void (*locate_bitmap)(struct supertype *st, int fd, void *sbv);
int (*write_bitmap)(struct supertype *st, int fd, void *sbv);
- void (*free_super)(void *super);
+ void (*free_super)(struct supertype *st, void *super);
int major;
int swapuuid; /* true if uuid is bigending rather than hostendian */
} super0, super1, *superlist[];