[libvirt] [PATCH] storage: return -1 when fs pool can't be mounted
Michal Privoznik
mprivozn at redhat.com
Thu Jul 11 11:30:57 UTC 2013
On 11.07.2013 12:43, Ján Tomko wrote:
> Don't reuse the return value of virStorageBackendFileSystemIsMounted.
> If it's 0, we'd return it even if the mount command failed.
>
> Also, don't report another error if it's -1, since one has already
> been reported.
>
> Introduced by 258e06c.
>
> https://bugzilla.redhat.com/show_bug.cgi?id=981251
> ---
> src/storage/storage_backend_fs.c | 11 +++++++----
> 1 file changed, 7 insertions(+), 4 deletions(-)
>
> diff --git a/src/storage/storage_backend_fs.c b/src/storage/storage_backend_fs.c
> index 8b40f55..d305b06 100644
> --- a/src/storage/storage_backend_fs.c
> +++ b/src/storage/storage_backend_fs.c
> @@ -355,6 +355,7 @@ virStorageBackendFileSystemMount(virStoragePoolObjPtr pool) {
> pool->def->source.format == VIR_STORAGE_POOL_NETFS_GLUSTERFS);
> virCommandPtr cmd = NULL;
> int ret = -1;
> + int rc;
>
> if (pool->def->type == VIR_STORAGE_POOL_NETFS) {
> if (pool->def->source.nhost != 1) {
> @@ -381,10 +382,12 @@ virStorageBackendFileSystemMount(virStoragePoolObjPtr pool) {
> }
>
> /* Short-circuit if already mounted */
> - if ((ret = virStorageBackendFileSystemIsMounted(pool)) != 0) {
> - virReportError(VIR_ERR_OPERATION_INVALID,
> - _("Target '%s' is already mounted"),
> - pool->def->target.path);
> + if ((rc = virStorageBackendFileSystemIsMounted(pool)) != 0) {
> + if (rc == 1) {
> + virReportError(VIR_ERR_OPERATION_INVALID,
> + _("Target '%s' is already mounted"),
> + pool->def->target.path);
> + }
> return -1;
> }
>
>
ACK
Michal
More information about the libvir-list
mailing list