There are 3 ways to lookup a volume, only virStorageVolLookupByName
needs pool object. So if no --pool is specified, it will tries to
get the volume via virStorageVolLookupByPath/virStorageVolLookupByKey.
But if all 3 ways fails, and no --pool is specified, a friendly
error might help the user get right way quickly.
vol = virStorageVolLookupByPath(ctl->conn, n);
}
- if (!vol)
- vshError(ctl, _("failed to get vol '%s'"), n);
+ if (!vol) {
+ if (pool)
+ vshError(ctl, _("failed to get vol '%s'"), n);
+ else
+ vshError(ctl, _("failed to get vol '%s', specifying --pool "
+ "might help"), n);
+ }
if (pool)
virStoragePoolFree(pool);