]> git.ipfire.org Git - thirdparty/mdadm.git/commitdiff
Create: add error checking for 'write_init_super'.
authorNeilBrown <neilb@suse.de>
Wed, 11 May 2011 03:43:27 +0000 (13:43 +1000)
committerNeilBrown <neilb@suse.de>
Wed, 11 May 2011 03:43:27 +0000 (13:43 +1000)
If this fails, we really must fail the whole 'create'.

Signed-off-by: NeilBrown <neilb@suse.de>
Create.c

index fb7f22897300fd3075032d810b42b7672ca2a315..f45ee21912751c838cc0ad18ca3f23dbe8531973 100644 (file)
--- a/Create.c
+++ b/Create.c
@@ -890,7 +890,13 @@ int Create(struct supertype *st, char *mddev,
                                me = map_by_devnum(&map, st->container_dev);
                        }
 
-                       st->ss->write_init_super(st);
+                       if (st->ss->write_init_super(st)) {
+                               fprintf(stderr,
+                                       Name ": Failed to write metadata to %s\n",
+                                       dv->devname);
+                               st->ss->free_super(st);
+                               goto abort;
+                       }
 
                        /* update parent container uuid */
                        if (me) {