]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - mdadm.h
Grow: pass layout as a string rather than a number.
[thirdparty/mdadm.git] / mdadm.h
diff --git a/mdadm.h b/mdadm.h
index 251f9a130436e3e360d9d436829c79167d774b8c..b2dd7303d510daad5bd9f5fd0a892239b8e38d4d 100644 (file)
--- a/mdadm.h
+++ b/mdadm.h
@@ -440,7 +440,7 @@ extern struct superswitch {
         * device. ->load_super has been called.
         */
        void (*examine_super)(struct supertype *st, char *homehost);
-       void (*brief_examine_super)(struct supertype *st);
+       void (*brief_examine_super)(struct supertype *st, int verbose);
        void (*export_examine_super)(struct supertype *st);
 
        /* Used to report details of an active array.
@@ -707,7 +707,6 @@ extern int add_dev(const char *name, const struct stat *stb, int flag, struct FT
 extern int Manage_ro(char *devname, int fd, int readonly);
 extern int Manage_runstop(char *devname, int fd, int runstop, int quiet);
 extern int Manage_resize(char *devname, int fd, long long size, int raid_disks);
-extern int Manage_reconfig(char *devname, int fd, int layout);
 extern int Manage_subdevs(char *devname, int fd,
                          mddev_dev_t devlist, int verbose);
 extern int autodetect(void);
@@ -715,7 +714,7 @@ extern int Grow_Add_device(char *devname, int fd, char *newdev);
 extern int Grow_addbitmap(char *devname, int fd, char *file, int chunk, int delay, int write_behind, int force);
 extern int Grow_reshape(char *devname, int fd, int quiet, char *backup_file,
                        long long size,
-                       int level, int layout, int chunksize, int raid_disks);
+                       int level, char *layout_str, int chunksize, int raid_disks);
 extern int Grow_restart(struct supertype *st, struct mdinfo *info,
                        int *fdlist, int cnt, char *backup_file);
 
@@ -724,13 +723,13 @@ extern int Assemble(struct supertype *st, char *mddev,
                    mddev_ident_t ident,
                    mddev_dev_t devlist, char *backup_file,
                    int readonly, int runstop,
-                   char *update, char *homehost,
+                   char *update, char *homehost, int require_homehost,
                    int verbose, int force);
 
 extern int Build(char *mddev, int chunk, int level, int layout,
                 int raiddisks, mddev_dev_t devlist, int assume_clean,
                 char *bitmap_file, int bitmap_chunk, int write_behind,
-                int delay, int verbose, int autof);
+                int delay, int verbose, int autof, unsigned long long size);
 
 
 extern int Create(struct supertype *st, char *mddev,
@@ -755,7 +754,8 @@ extern int Wait(char *dev);
 extern int WaitClean(char *dev, int verbose);
 
 extern int Incremental(char *devname, int verbose, int runstop,
-                      struct supertype *st, char *homehost, int autof);
+                      struct supertype *st, char *homehost, int require_homehost,
+                      int autof);
 extern int Incremental_container(struct supertype *st, char *devname,
                                 int verbose, int runstop, int autof,
                                 int trustworthy);
@@ -773,7 +773,10 @@ extern unsigned long bitmap_sectors(struct bitmap_super_s *bsb);
 
 extern int md_get_version(int fd);
 extern int get_linux_version(void);
+extern long long parse_size(char *size);
 extern int parse_uuid(char *str, int uuid[4]);
+extern int parse_layout_10(char *layout);
+extern int parse_layout_faulty(char *layout);
 extern int check_ext2(int fd, char *name);
 extern int check_reiser(int fd, char *name);
 extern int check_raid(int fd, char *name);
@@ -789,14 +792,19 @@ extern int parse_auto(char *str, char *msg, int config);
 extern mddev_ident_t conf_get_ident(char *dev);
 extern mddev_dev_t conf_get_devs(void);
 extern int conf_test_dev(char *devname);
+extern int conf_test_metadata(const char *version);
 extern struct createinfo *conf_get_create_info(void);
 extern void set_conffile(char *file);
 extern char *conf_get_mailaddr(void);
 extern char *conf_get_mailfrom(void);
 extern char *conf_get_program(void);
-extern char *conf_get_homehost(void);
+extern char *conf_get_homehost(int *require_homehostp);
 extern char *conf_line(FILE *file);
 extern char *conf_word(FILE *file, int allow_key);
+extern int conf_name_is_free(char *name);
+extern int devname_matches(char *name, char *match);
+extern struct mddev_ident_s *conf_match(struct mdinfo *info, struct supertype *st);
+
 extern void free_line(char *line);
 extern int match_oneof(char *devices, char *devname);
 extern void uuid_from_super(int uuid[4], mdp_super_t *super);