Commit 30cdc48c authored by Josh Durgin's avatar Josh Durgin Committed by Kevin Wolf
Browse files

rbd: Add bdrv_truncate implementation

parent 51a13528
Loading
Loading
Loading
Loading
+14 −0
Original line number Diff line number Diff line
@@ -688,6 +688,19 @@ static int64_t qemu_rbd_getlength(BlockDriverState *bs)
    return info.size;
}

static int qemu_rbd_truncate(BlockDriverState *bs, int64_t offset)
{
    BDRVRBDState *s = bs->opaque;
    int r;

    r = rbd_resize(s->image, offset);
    if (r < 0) {
        return r;
    }

    return 0;
}

static int qemu_rbd_snap_create(BlockDriverState *bs,
                                QEMUSnapshotInfo *sn_info)
{
@@ -784,6 +797,7 @@ static BlockDriver bdrv_rbd = {
    .bdrv_get_info      = qemu_rbd_getinfo,
    .create_options     = qemu_rbd_create_options,
    .bdrv_getlength     = qemu_rbd_getlength,
    .bdrv_truncate      = qemu_rbd_truncate,
    .protocol_name      = "rbd",

    .bdrv_aio_readv     = qemu_rbd_aio_readv,