rbd: make the code more readable

Make it a bit clearer and more readable.

Signed-off-by: Xiubo Li <lixiubo@cmss.chinamobile.com>
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
Reviewed-by: John Snow <jsnow@redhat.com>
Reviewed-by: Jeff Cody <jcody@redhat.com>
Message-id: 1476519973-6436-1-git-send-email-lixiubo@cmss.chinamobile.com
CC: John Snow <jsnow@redhat.com>
Signed-off-by: Jeff Cody <jcody@redhat.com>
This commit is contained in:
Xiubo Li 2016-10-15 16:26:13 +08:00 committed by Jeff Cody
parent 05fce20d6d
commit e38f643a1d
1 changed files with 12 additions and 13 deletions

View File

@ -365,45 +365,44 @@ static int qemu_rbd_create(const char *filename, QemuOpts *opts, Error **errp)
rados_conf_read_file(cluster, NULL); rados_conf_read_file(cluster, NULL);
} else if (conf[0] != '\0' && } else if (conf[0] != '\0' &&
qemu_rbd_set_conf(cluster, conf, true, &local_err) < 0) { qemu_rbd_set_conf(cluster, conf, true, &local_err) < 0) {
rados_shutdown(cluster);
error_propagate(errp, local_err); error_propagate(errp, local_err);
return -EIO; ret = -EIO;
goto shutdown;
} }
if (conf[0] != '\0' && if (conf[0] != '\0' &&
qemu_rbd_set_conf(cluster, conf, false, &local_err) < 0) { qemu_rbd_set_conf(cluster, conf, false, &local_err) < 0) {
rados_shutdown(cluster);
error_propagate(errp, local_err); error_propagate(errp, local_err);
return -EIO; ret = -EIO;
goto shutdown;
} }
if (qemu_rbd_set_auth(cluster, secretid, errp) < 0) { if (qemu_rbd_set_auth(cluster, secretid, errp) < 0) {
rados_shutdown(cluster); ret = -EIO;
return -EIO; goto shutdown;
} }
ret = rados_connect(cluster); ret = rados_connect(cluster);
if (ret < 0) { if (ret < 0) {
error_setg_errno(errp, -ret, "error connecting"); error_setg_errno(errp, -ret, "error connecting");
rados_shutdown(cluster); goto shutdown;
return ret;
} }
ret = rados_ioctx_create(cluster, pool, &io_ctx); ret = rados_ioctx_create(cluster, pool, &io_ctx);
if (ret < 0) { if (ret < 0) {
error_setg_errno(errp, -ret, "error opening pool %s", pool); error_setg_errno(errp, -ret, "error opening pool %s", pool);
rados_shutdown(cluster); goto shutdown;
return ret;
} }
ret = rbd_create(io_ctx, name, bytes, &obj_order); ret = rbd_create(io_ctx, name, bytes, &obj_order);
rados_ioctx_destroy(io_ctx);
rados_shutdown(cluster);
if (ret < 0) { if (ret < 0) {
error_setg_errno(errp, -ret, "error rbd create"); error_setg_errno(errp, -ret, "error rbd create");
return ret;
} }
rados_ioctx_destroy(io_ctx);
shutdown:
rados_shutdown(cluster);
return ret; return ret;
} }