block/rbd: update s->image_size in qemu_rbd_getlength
authorPeter Lieven <pl@kamp.de>
Fri, 2 Jul 2021 17:23:53 +0000 (19:23 +0200)
committerKevin Wolf <kwolf@redhat.com>
Fri, 9 Jul 2021 10:26:05 +0000 (12:26 +0200)
While at it just call rbd_get_size and avoid rbd_image_info_t.

Signed-off-by: Peter Lieven <pl@kamp.de>
Reviewed-by: Ilya Dryomov <idryomov@gmail.com>
Message-Id: <20210702172356.11574-4-idryomov@gmail.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
block/rbd.c

index 1ebf8f7e48758b13489956218c1040fbb59b000a..e2028d3db5ff9797af69c399d9be3757b7702506 100644 (file)
@@ -1304,15 +1304,14 @@ static ImageInfoSpecific *qemu_rbd_get_specific_info(BlockDriverState *bs,
 static int64_t qemu_rbd_getlength(BlockDriverState *bs)
 {
     BDRVRBDState *s = bs->opaque;
-    rbd_image_info_t info;
     int r;
 
-    r = rbd_stat(s->image, &info, sizeof(info));
+    r = rbd_get_size(s->image, &s->image_size);
     if (r < 0) {
         return r;
     }
 
-    return info.size;
+    return s->image_size;
 }
 
 static int coroutine_fn qemu_rbd_co_truncate(BlockDriverState *bs,