summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNeil Brown <neilb@suse.de>2006-04-17 11:59:45 +0000
committerNeil Brown <neilb@suse.de>2006-04-17 11:59:45 +0000
commit024ce7fe2b6d06dc669d0b675a49c02910853a44 (patch)
treec2a71b7fbcc51b96bb53f98169f5a285bf7b7729
parent82d9eba687c952a9919f756203706285d6c42f07 (diff)
downloadmdadm-024ce7fe2b6d06dc669d0b675a49c02910853a44.tar.gz
mdadm-024ce7fe2b6d06dc669d0b675a49c02910853a44.tar.xz
mdadm-024ce7fe2b6d06dc669d0b675a49c02910853a44.zip
Only in mdadm-inter/: ANNOUNCE-2.0-devel-1
Only in mdadm-inter/: ANNOUNCE-2.0-devel-2 Only in mdadm-inter/: Create.c.orig Only in mdadm-inter/: bitmap.c Only in mdadm-inter/: bitmap.h Only in mdadm-inter/: mdassemble.8 Only in mdadm-inter/: mkd1 diff -ru mdadm-pre/mdadm-1.11.0/super1.c mdadm-inter/super1.c Signed-off-by: Neil Brown <neilb@suse.de>
-rw-r--r--super1.c9
1 files changed, 7 insertions, 2 deletions
diff --git a/super1.c b/super1.c
index 8678765..736ed7d 100644
--- a/super1.c
+++ b/super1.c
@@ -478,11 +478,15 @@ static int write_init_super1(struct supertype *st, void *sbv, mdu_disk_info_t *d
*(__u32*)(sb->device_uuid+12) = random();
- if (ioctl(fd, BLKGETSIZE, &size))
+ if (ioctl(fd, BLKGETSIZE, &size)) {
+ close(fd);
return 1;
+ }
- if (size < 24)
+ if (size < 24) {
+ close(fd);
return 2;
+ }
/*
@@ -522,6 +526,7 @@ static int write_init_super1(struct supertype *st, void *sbv, mdu_disk_info_t *d
rv = store_super1(fd, sb);
if (rv)
fprintf(stderr, Name ": failed to write superblock to %s\n", devname);
+ close(fd);
return rv;
}