diff options
-rw-r--r-- | src/basic/btrfs-util.c | 4 | ||||
-rw-r--r-- | src/tmpfiles/tmpfiles.c | 4 |
2 files changed, 8 insertions, 0 deletions
diff --git a/src/basic/btrfs-util.c b/src/basic/btrfs-util.c index 661331e8b2..290fabdeff 100644 --- a/src/basic/btrfs-util.c +++ b/src/basic/btrfs-util.c @@ -1010,6 +1010,10 @@ static int qgroup_create_or_destroy(int fd, bool b, uint64_t qgroupid) { for (c = 0;; c++) { if (ioctl(fd, BTRFS_IOC_QGROUP_CREATE, &args) < 0) { + /* If quota is not enabled, we get EINVAL. Turn this into a recognizable error */ + if (errno == EINVAL) + return -ENOPROTOOPT; + if (errno == EBUSY && c < 10) { (void) btrfs_quota_scan_wait(fd); continue; diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c index 64f0c9396c..74b6b91593 100644 --- a/src/tmpfiles/tmpfiles.c +++ b/src/tmpfiles/tmpfiles.c @@ -1267,6 +1267,10 @@ static int create_item(Item *i) { log_debug_errno(r, "Couldn't adjust quota for subvolume \"%s\" because of read-only file system: %m", i->path); return 0; } + if (r == -ENOPROTOOPT) { + log_debug_errno(r, "Couldn't adjust quota for subvolume \"%s\" because quota support is disabled: %m", i->path); + return 0; + } if (r < 0) return log_error_errno(r, "Failed to adjust quota for subvolume \"%s\": %m", i->path); if (r > 0) |