btrfs-progs: qgroup show: refine error messages

When qgroup show is called on a filesystem that does not have quotas
enabled, the error message is very unclear:

  ERROR: can't perform the search - No such file or directory
  ERROR: can't list qgroups: No such file or director

Remove the error from low level helper and let the command handler
decide what to print.

Signed-off-by: David Sterba <dsterba@suse.com>
This commit is contained in:
David Sterba 2017-01-20 17:52:12 +01:00
parent 4415ff6bcc
commit 7610cbf729
2 changed files with 6 additions and 6 deletions

View File

@ -382,9 +382,11 @@ static int cmd_qgroup_show(int argc, char **argv)
qgroupid); qgroupid);
} }
ret = btrfs_show_qgroups(fd, filter_set, comparer_set); ret = btrfs_show_qgroups(fd, filter_set, comparer_set);
close_file_or_dir(fd, dirstream); if (ret == -ENOENT)
if (ret < 0) error("can't list qgroups: quotas not enabled");
else if (ret < 0)
error("can't list qgroups: %s", strerror(-ret)); error("can't list qgroups: %s", strerror(-ret));
close_file_or_dir(fd, dirstream);
out: out:
return !!ret; return !!ret;

View File

@ -1064,11 +1064,9 @@ static int __qgroups_search(int fd, struct qgroup_lookup *qgroup_lookup)
while (1) { while (1) {
ret = ioctl(fd, BTRFS_IOC_TREE_SEARCH, &args); ret = ioctl(fd, BTRFS_IOC_TREE_SEARCH, &args);
if (ret < 0) { if (ret < 0)
error("cannot perform the search: %s",
strerror(errno));
return -errno; return -errno;
}
/* the ioctl returns the number of item it found in nr_items */ /* the ioctl returns the number of item it found in nr_items */
if (sk->nr_items == 0) if (sk->nr_items == 0)
break; break;