Hi, I have a suggest about mdadm to set disk faulty. Since commit 1ca69c4bc4b1ef (md: avoid taking the mutex on some ioctls) removes lock when set disk faulty, so we'd better using ioctl(SET_DISK_FAULTY) to set disk faulty, instead of echo faulty > /sys/block/<md>/md/dev-<disk>/state, because caller of state's handler would lock mddev. Like following: Index: mdadm-4.0/Manage.c =================================================================== --- mdadm-4.0.orig/Manage.c +++ mdadm-4.0/Manage.c @@ -1662,9 +1662,7 @@ int Manage_subdevs(char *devname, int fd case 'f': /* set faulty */ /* FIXME check current member */ - if ((sysfd >= 0 && write(sysfd, "faulty", 6) != 6) || - (sysfd < 0 && ioctl(fd, SET_DISK_FAULTY, - rdev))) { + if (ioctl(fd, SET_DISK_FAULTY, rdev)) { if (errno == EBUSY) busy = 1; pr_err("set device faulty failed for %s: %s\n", -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html