]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
Change Build to take a struct context
authorNeilBrown <neilb@suse.de>
Mon, 9 Jul 2012 07:19:21 +0000 (17:19 +1000)
committerNeilBrown <neilb@suse.de>
Mon, 9 Jul 2012 07:19:21 +0000 (17:19 +1000)
Signed-off-by: NeilBrown <neilb@suse.de>
Build.c
mdadm.c
mdadm.h

diff --git a/Build.c b/Build.c
index 8e0307dbce39317e5ce690b1a49748f718119090..6b5b9518d968eaaa62d9e40ec441b8d0c3e3d383 100644 (file)
--- a/Build.c
+++ b/Build.c
@@ -31,7 +31,7 @@
 int Build(char *mddev, int chunk, int level, int layout,
          int raiddisks, struct mddev_dev *devlist, int assume_clean,
          char *bitmap_file, int bitmap_chunk, int write_behind,
-         int delay, int verbose, int autof, unsigned long long size)
+         struct context *c, unsigned long long size)
 {
        /* Build a linear or raid0 arrays without superblocks
         * We cannot really do any checks, we just do it.
@@ -90,26 +90,26 @@ int Build(char *mddev, int chunk, int level, int layout,
                        break;
                case 10:
                        layout = 0x102; /* near=2, far=1 */
-                       if (verbose > 0)
+                       if (c->verbose > 0)
                                pr_err("layout defaults to n1\n");
                        break;
                case 5:
                case 6:
                        layout = map_name(r5layout, "default");
-                       if (verbose > 0)
+                       if (c->verbose > 0)
                                pr_err("layout defaults to %s\n", map_num(r5layout, layout));
                        break;
                case LEVEL_FAULTY:
                        layout = map_name(faultylayout, "default");
 
-                       if (verbose > 0)
+                       if (c->verbose > 0)
                                pr_err("layout defaults to %s\n", map_num(faultylayout, layout));
                        break;
                }
 
        /* We need to create the device.  It can have no name. */
        map_lock(&map);
-       mdfd = create_mddev(mddev, NULL, autof, LOCAL,
+       mdfd = create_mddev(mddev, NULL, c->autof, LOCAL,
                            chosen_name);
        if (mdfd < 0) {
                map_unlock(&map);
@@ -230,7 +230,7 @@ int Build(char *mddev, int chunk, int level, int layout,
                                }
                                bitmapsize = size>>9; /* FIXME wrong for RAID10 */
                                if (CreateBitmap(bitmap_file, 1, NULL, bitmap_chunk,
-                                                delay, write_behind, bitmapsize, major)) {
+                                                c->delay, write_behind, bitmapsize, major)) {
                                        goto abort;
                                }
                                bitmap_fd = open(bitmap_file, O_RDWR);
@@ -273,7 +273,7 @@ int Build(char *mddev, int chunk, int level, int layout,
                        goto abort;
                }
        }
-       if (verbose >= 0)
+       if (c->verbose >= 0)
                pr_err("array %s built and started.\n",
                        mddev);
        wait_for(mddev, mdfd);
diff --git a/mdadm.c b/mdadm.c
index 13067a095c1a38aac01512022a7eff92e130b793..21748b2808afe2675802108758f2c9001869c2bf 100644 (file)
--- a/mdadm.c
+++ b/mdadm.c
@@ -1315,7 +1315,7 @@ int main(int argc, char *argv[])
                rv = Build(devlist->devname, chunk, level, layout,
                           raiddisks, devlist->next, assume_clean,
                           bitmap_file, bitmap_chunk, write_behind,
-                          c.delay, c.verbose, c.autof, size);
+                          &c, size);
                break;
        case CREATE:
                if (c.delay == 0)
diff --git a/mdadm.h b/mdadm.h
index 74dc0fb8b37d035bd1b240e4612e1f38cf1e5d80..51e021117a64566e4a4fe3fbfd74f26067789715 100644 (file)
--- a/mdadm.h
+++ b/mdadm.h
@@ -1101,7 +1101,7 @@ extern int Assemble(struct supertype *st, char *mddev,
 extern int Build(char *mddev, int chunk, int level, int layout,
                 int raiddisks, struct mddev_dev *devlist, int assume_clean,
                 char *bitmap_file, int bitmap_chunk, int write_behind,
-                int delay, int verbose, int autof, unsigned long long size);
+                struct context *c, unsigned long long size);
 
 
 extern int Create(struct supertype *st, char *mddev,