From: Venky Shankar Date: Wed, 29 Jun 2016 08:25:20 +0000 (+0530) Subject: librbd: minor refactor in create_v1() X-Git-Tag: v11.0.1~507^2~3 X-Git-Url: http://git.apps.os.sepia.ceph.com/?a=commitdiff_plain;h=830e0f1f4a5f5c82e29d02f43a75edafad5e471e;p=ceph-ci.git librbd: minor refactor in create_v1() create_v2() uses util::generate_image_id() therefore not requiring 'bid' to be passed in as parameter. This makes bid generation in create() unnecessary -- hence move this call to create_v1(). Signed-off-by: Venky Shankar --- diff --git a/src/librbd/internal.cc b/src/librbd/internal.cc index e7502e58f8f..3105968f549 100644 --- a/src/librbd/internal.cc +++ b/src/librbd/internal.cc @@ -1067,8 +1067,7 @@ int mirror_image_disable_internal(ImageCtx *ictx, bool force, return r; } - int create_v1(IoCtx& io_ctx, const char *imgname, uint64_t bid, - uint64_t size, int order) + int create_v1(IoCtx& io_ctx, const char *imgname, uint64_t size, int order) { CephContext *cct = (CephContext *)io_ctx.cct(); @@ -1085,6 +1084,9 @@ int mirror_image_disable_internal(ImageCtx *ictx, bool force, return r; } + Rados rados(io_ctx); + uint64_t bid = rados.get_instance_id(); + ldout(cct, 2) << "creating rbd image..." << dendl; struct rbd_obj_header_ondisk header; init_rbd_header(header, size, order, bid); @@ -1430,9 +1432,6 @@ int mirror_image_disable_internal(ImageCtx *ictx, bool force, return -EDOM; } - Rados rados(io_ctx); - uint64_t bid = rados.get_instance_id(); - if ((features & RBD_FEATURE_STRIPINGV2) == 0 && ((stripe_unit && stripe_unit != (1ull << order)) || (stripe_count && stripe_count != 1))) { @@ -1456,7 +1455,7 @@ int mirror_image_disable_internal(ImageCtx *ictx, bool force, if (stripe_count && stripe_count != 1) return -EINVAL; - r = create_v1(io_ctx, imgname, bid, size, order); + r = create_v1(io_ctx, imgname, size, order); } else { uint64_t journal_order = cct->_conf->rbd_journal_order; uint64_t journal_splay_width = cct->_conf->rbd_journal_splay_width;