diff --git a/blockdev.c b/blockdev.c index ea59c39c15b5fb94c27c9c7949a486072658d3e2..5651a8e140b9da2880261049dfbe692058ac43b5 100644 --- a/blockdev.c +++ b/blockdev.c @@ -1250,6 +1250,10 @@ static void internal_snapshot_prepare(BlkTransactionState *common, return; } + if (bdrv_op_is_blocked(bs, BLOCK_OP_TYPE_INTERNAL_SNAPSHOT, errp)) { + return; + } + if (bdrv_is_read_only(bs)) { error_set(errp, QERR_DEVICE_IS_READ_ONLY, device); return;