]> git.ipfire.org Git - thirdparty/mdadm.git/blobdiff - Manage.c
wait_for improvement.
[thirdparty/mdadm.git] / Manage.c
index f2b32662ede7d1dd69de30e654cebf158beab08e..7afd89b7ce7b56c81aa6871ed8c149961cf02382 100644 (file)
--- a/Manage.c
+++ b/Manage.c
@@ -746,7 +746,14 @@ int Manage_subdevs(char *devname, int fd,
                                                " to container - odd\n");
                                        return 1;
                                }
-                               if (!sysfs_unique_holder(dnum, stb.st_rdev)) {
+                               /* in the detached case it is not possible to
+                                * check if we are the unique holder, so just
+                                * rely on the 'detached' checks
+                                */
+                               if (strcmp(dv->devname, "detached") == 0 ||
+                                   sysfs_unique_holder(dnum, stb.st_rdev))
+                                       /* pass */;
+                               else {
                                        fprintf(stderr, Name
                                                ": %s is %s, cannot remove.\n",
                                                dnprintable,