Whamcloud - gitweb
Branch HEAD
[fs/lustre-release.git] / lustre / utils / liblustreapi.c
index 5ea3ee8..66b1604 100644 (file)
@@ -743,6 +743,10 @@ static int cb_find_init(char *path, DIR *parent, DIR *dir, void *data)
                                         __FUNCTION__, path);
                                 return ret;
                         }
+                } else if (errno == ENOENT) {
+                        err_msg("warning: %s: %s does not exist",
+                                __FUNCTION__, path);
+                        goto decided;
                 } else {
                         err_msg("error: %s: %s failed for %s", __FUNCTION__,
                                 dir ? "LL_IOC_MDC_GETINFO" :
@@ -856,9 +860,15 @@ static int cb_find_init(char *path, DIR *parent, DIR *dir, void *data)
                 }
 
                 if (ret) {
-                        fprintf(stderr, "%s: IOC_LOV_GETINFO on %s failed: "
-                                "%s.\n", __FUNCTION__, path, strerror(errno));
-                        return -EINVAL;
+                        if (errno == ENOENT) {
+                                err_msg("warning: %s: %s does not exist",
+                                        __FUNCTION__, path);
+                                goto decided;
+                        } else {
+                                fprintf(stderr, "%s: IOC_LOV_GETINFO on %s failed: "
+                                        "%s.\n", __FUNCTION__, path, strerror(errno));
+                                return ret;
+                        }
                 }
 
                 /* Check the time on osc. */
@@ -957,6 +967,10 @@ static int cb_getstripe(char *path, DIR *parent, DIR *d, void *data)
                 } else if (errno == ENOTTY) {
                         fprintf(stderr, "%s: '%s' not on a Lustre fs?\n",
                                 __FUNCTION__, path);
+                } else if (errno == ENOENT) {
+                        err_msg("warning: %s: %s does not exist",
+                                __FUNCTION__, path);
+                        goto out;
                 } else {
                         err_msg("error: %s: %s failed for %s", __FUNCTION__,
                                 d ? "LL_IOC_LOV_GETSTRIPE" :
@@ -1286,6 +1300,10 @@ static int cb_quotachown(char *path, DIR *parent, DIR *d, void *data)
                                 fprintf(stderr, "%s has no stripe info\n",
                                         path);
                         rc = 0;
+                } else if (errno == ENOENT) {
+                        err_msg("warning: %s: %s does not exist",
+                                __FUNCTION__, path);
+                        rc = 0;
                 } else if (errno != EISDIR) {
                         rc = errno;
                         err_msg("%s ioctl failed for %s.",