From 0b92885420c9cf42da27c63939d388e276a7ddde Mon Sep 17 00:00:00 2001 From: Stefan Hajnoczi Date: Wed, 19 Nov 2014 14:19:43 +0000 Subject: [PATCH] blockdev: check for BLOCK_OP_TYPE_INTERNAL_SNAPSHOT_DELETE The BLOCK_OP_TYPE_INTERNAL_SNAPSHOT_DELETE op blocker exists but was never used! Let's fix that so snapshot delete can be blocked. Signed-off-by: Stefan Hajnoczi Reviewed-by: Max Reitz Signed-off-by: Max Reitz Signed-off-by: Kevin Wolf --- blockdev.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/blockdev.c b/blockdev.c index fb9a0059c3..a7f1e09bce 100644 --- a/blockdev.c +++ b/blockdev.c @@ -1132,6 +1132,10 @@ SnapshotInfo *qmp_blockdev_snapshot_delete_internal_sync(const char *device, aio_context = bdrv_get_aio_context(bs); aio_context_acquire(aio_context); + if (bdrv_op_is_blocked(bs, BLOCK_OP_TYPE_INTERNAL_SNAPSHOT_DELETE, errp)) { + goto out_aio_context; + } + ret = bdrv_snapshot_find_by_id_and_name(bs, id, name, &sn, &local_err); if (local_err) { error_propagate(errp, local_err); -- GitLab