/*
* mdadm - manage Linux "md" devices aka RAID arrays.
*
- * Copyright (C) 2001-2002 Neil Brown <neilb@cse.unsw.edu.au>
+ * Copyright (C) 2001-2006 Neil Brown <neilb@suse.de>
*
*
* This program is free software; you can redistribute it and/or modify
}
} else if (runstop < 0){
if (ioctl(fd, STOP_ARRAY, NULL)) {
- if (!quiet)
+ if (quiet==0)
fprintf(stderr, Name ": fail to stop array %s: %s\n",
devname, strerror(errno));
return 1;
}
+ if (quiet <= 0)
+ fprintf(stderr, Name ": stopped %s\n", devname);
}
return 0;
}
continue;
if ((disc.state & 4)==0) continue; /* sync */
/* Looks like a good device to try */
- dev = map_dev(disc.major, disc.minor);
+ dev = map_dev(disc.major, disc.minor, 1);
if (!dev) continue;
- dfd = open(dev, O_RDONLY);
+ dfd = dev_open(dev, O_RDONLY);
if (dfd < 0) continue;
if (st->ss->load_super(st, dfd, &dsuper, NULL)) {
close(dfd);
break;
}
}
+ if (dv->writemostly)
+ disc.state |= (1 << MD_DISK_WRITEMOSTLY);
if (ioctl(fd,ADD_NEW_DISK, &disc)) {
fprintf(stderr, Name ": add new device failed for %s as %d: %s\n",
dv->devname, j, strerror(errno));