[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-commits] [qemu/qemu] 6bf45d: qcow2: Prevent allocating refcount bl
From: |
GitHub |
Subject: |
[Qemu-commits] [qemu/qemu] 6bf45d: qcow2: Prevent allocating refcount blocks at offse... |
Date: |
Tue, 14 Nov 2017 10:29:54 -0800 |
Branch: refs/heads/master
Home: https://github.com/qemu/qemu
Commit: 6bf45d59f98c898b7d7997a333765c8ee41236ea
https://github.com/qemu/qemu/commit/6bf45d59f98c898b7d7997a333765c8ee41236ea
Author: Alberto Garcia <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M block/qcow2-refcount.c
M tests/qemu-iotests/060
M tests/qemu-iotests/060.out
Log Message:
-----------
qcow2: Prevent allocating refcount blocks at offset 0
Each entry in the qcow2 cache contains an offset field indicating the
location of the data in the qcow2 image. If the offset is 0 then it
means that the entry contains no data and is available to be used when
needed.
Because of that it is not possible to store in the cache the first
cluster of the qcow2 image (offset = 0). This is not a problem because
that cluster always contains the qcow2 header and we're not using this
cache for that.
However, if the qcow2 image is corrupted it can happen that we try to
allocate a new refcount block at offset 0, triggering this assertion
and crashing QEMU:
qcow2_cache_entry_mark_dirty: Assertion `c->entries[i].offset != 0' failed
This patch adds an explicit check for this scenario and a new test
case.
This problem was originally reported here:
https://bugs.launchpad.net/qemu/+bug/1728615
Reported-by: R.Nageswara Sastry <address@hidden>
Signed-off-by: Alberto Garcia <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Message-id: address@hidden
Signed-off-by: Max Reitz <address@hidden>
Commit: 9883975050deffc147a3903d07ff995ecdc8a100
https://github.com/qemu/qemu/commit/9883975050deffc147a3903d07ff995ecdc8a100
Author: Alberto Garcia <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M block/qcow2-cluster.c
M tests/qemu-iotests/060
M tests/qemu-iotests/060.out
Log Message:
-----------
qcow2: Prevent allocating L2 tables at offset 0
If the refcount data is corrupted then we can end up trying to
allocate a new L2 table at offset 0 in the image, triggering an
assertion in the qcow2 cache that would crash QEMU:
qcow2_cache_entry_mark_dirty: Assertion `c->entries[i].offset != 0' failed
This patch adds an explicit check for this scenario and a new test
case.
Signed-off-by: Alberto Garcia <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Message-id: address@hidden
Signed-off-by: Max Reitz <address@hidden>
Commit: 8aa34834d566ba4e635d6029339a5f4f1ae1685e
https://github.com/qemu/qemu/commit/8aa34834d566ba4e635d6029339a5f4f1ae1685e
Author: Alberto Garcia <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M block/qcow2-refcount.c
M tests/qemu-iotests/060
M tests/qemu-iotests/060.out
Log Message:
-----------
qcow2: Prevent allocating compressed clusters at offset 0
If the refcount data is corrupted then we can end up trying to
allocate a new compressed cluster at offset 0 in the image, triggering
an assertion in qcow2_alloc_bytes() that would crash QEMU:
qcow2_alloc_bytes: Assertion `offset' failed.
This patch adds an explicit check for this scenario and a new test
case.
Signed-off-by: Alberto Garcia <address@hidden>
Message-id: address@hidden
Reviewed-by: Max Reitz <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Commit: 951053a9ec1c47edf4b2549ef58d82aee8a42a7f
https://github.com/qemu/qemu/commit/951053a9ec1c47edf4b2549ef58d82aee8a42a7f
Author: Alberto Garcia <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M block/qcow2.c
M tests/qemu-iotests/060
M tests/qemu-iotests/060.out
Log Message:
-----------
qcow2: Don't open images with header.refcount_table_clusters == 0
qcow2_do_open() is checking that header.refcount_table_clusters is not
too large, but it doesn't check that it's greater than zero. Apart
from the fact that an image like that is obviously corrupted, trying
to use it crashes QEMU since we end up with a null s->refcount_table
after qcow2_refcount_init().
These images can however be repaired, so allow opening them if the
BDRV_O_CHECK flag is set.
Signed-off-by: Alberto Garcia <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Message-id: address@hidden
Signed-off-by: Max Reitz <address@hidden>
Commit: 5a45da5ef8f8fa9c10706097b30fc766217a8ebb
https://github.com/qemu/qemu/commit/5a45da5ef8f8fa9c10706097b30fc766217a8ebb
Author: Alberto Garcia <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M tests/qemu-iotests/060
M tests/qemu-iotests/060.out
Log Message:
-----------
qcow2: Add iotest for an image with header.refcount_table_offset == 0
This patch adds a simple iotest in which we try to write to an image
with the refcount table offset set to 0.
This scenario was already handled by the existing consistency checks,
but we add an explicit test case for completeness.
Signed-off-by: Alberto Garcia <address@hidden>
Message-id: address@hidden
Reviewed-by: Max Reitz <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Commit: ef083f61af65209ab553569903a5396c25e6f2c3
https://github.com/qemu/qemu/commit/ef083f61af65209ab553569903a5396c25e6f2c3
Author: Alberto Garcia <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M tests/qemu-iotests/060
M tests/qemu-iotests/060.out
Log Message:
-----------
qcow2: Add iotest for an empty refcount table
This patch adds a simple iotest in which we try to write to an image
with an empty refcount table (i.e. with all entries set to 0).
This scenario was already handled by the existing consistency checks,
but we add an explicit test case for completeness.
Signed-off-by: Alberto Garcia <address@hidden>
Reviewed-by: Max Reitz <address@hidden>
Message-id: address@hidden
Signed-off-by: Max Reitz <address@hidden>
Commit: c9b83e9c23ecb094ddf987c7c37b8f454cb80615
https://github.com/qemu/qemu/commit/c9b83e9c23ecb094ddf987c7c37b8f454cb80615
Author: Alberto Garcia <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M block/qcow2.c
Log Message:
-----------
qcow2: Assert that the crypto header does not overlap other metadata
The crypto header is initialized only when QEMU is creating a new
image, so there's no chance of this happening on a corrupted image.
If QEMU is really trying to allocate the header overlapping other
existing metadata sections then this is a serious bug in QEMU itself
so let's add an assertion.
Signed-off-by: Alberto Garcia <address@hidden>
Message-id: address@hidden
Reviewed-by: Daniel P. Berrange <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Commit: dca9b6a2b1536415ce366895b840051ac44c244b
https://github.com/qemu/qemu/commit/dca9b6a2b1536415ce366895b840051ac44c244b
Author: Max Reitz <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M tests/qemu-iotests/030
Log Message:
-----------
iotests: Make 030 less flaky
This patch fixes two race conditions in 030:
1. The first is in TestENOSPC.test_enospc(). After resuming the job,
querying it to confirm it is no longer paused may fail because in the
meantime it might have completed already. The same was fixed in
TestEIO.test_ignore() already (in commit
2c3b44da07d341557a8203cc509ea07fe3605e11).
2. The second is in TestSetSpeed.test_set_speed_invalid(): Here, a
stream job is started on a drive without any break points, with a
block-job-set-speed invoked subsequently. However, without any break
points, the job might have completed in the meantime (on tmpfs at
least); or it might complete before cancel_and_wait() which expects
the job to still exist. This can be fixed like everywhere else by
pausing the drive (installing break points) before starting the job
and letting cancel_and_wait() resume it.
Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Signed-off-by: Max Reitz <address@hidden>
Commit: 51c493c5cccdf767f53bc8829fa1a44ce05ffd02
https://github.com/qemu/qemu/commit/51c493c5cccdf767f53bc8829fa1a44ce05ffd02
Author: Max Reitz <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M tests/qemu-iotests/040
Log Message:
-----------
iotests: Add missing 'blkdebug::' in 040
040 tries to invoke pause_drive() on a drive that does not use blkdebug.
Good idea, but let's use blkdebug to make it actually work.
Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Signed-off-by: Max Reitz <address@hidden>
Commit: bc11aee2acea2944d2cf685bf35956b860df49cd
https://github.com/qemu/qemu/commit/bc11aee2acea2944d2cf685bf35956b860df49cd
Author: Max Reitz <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M tests/qemu-iotests/055
Log Message:
-----------
iotests: Make 055 less flaky
First of all, test 055 does a valiant job of invoking pause_drive()
sometimes, but that is worth nothing without blkdebug. So the first
thing to do is to sprinkle a couple of "blkdebug::" in there -- with the
exception of the transaction tests, because the blkdebug break points
make the transaction QMP command hang (which is bad). In that case, we
can get away with throttling the block job that it effectively is
paused.
Then, 055 usually does not pause the drive before starting a block job
that should be cancelled. This means that the backup job might be
completed already before block-job-cancel is invoked; thus making the
test either fail (currently) or moot if cancel_and_wait() ignored this
condition. Fix this by pausing the drive before starting the job.
Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Signed-off-by: Max Reitz <address@hidden>
Commit: ddc7093eec38c875a6a2ae18a9ecf563107d9ff0
https://github.com/qemu/qemu/commit/ddc7093eec38c875a6a2ae18a9ecf563107d9ff0
Author: Max Reitz <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M tests/qemu-iotests/083
Log Message:
-----------
iotests: Make 083 less flaky
083 has (at least) two issues:
1. By launching the nbd-fault-injector in background, it may not be
scheduled until the first grep on its output file is executed.
However, until then, that file may not have been created yet -- so it
either does not exist yet (thus making the grep emit an error), or it
does exist but contains stale data (thus making the rest of the test
case work connect to a wrong address).
Fix this by explicitly overwriting the output file before executing
nbd-fault-injector.
2. The nbd-fault-injector prints things other than "Listening on...".
It also prints a "Closing connection" message from time to time. We
currently invoke sed on the whole file in the hope of it only
containing the "Listening on..." line yet. That hope is sometimes
shattered by the brutal reality of race conditions, so make the sed
script more robust.
Signed-off-by: Max Reitz <address@hidden>
Message-id: address@hidden
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Commit: 19026817f71c698d1acb9c85bf5544b799fc5c2c
https://github.com/qemu/qemu/commit/19026817f71c698d1acb9c85bf5544b799fc5c2c
Author: Max Reitz <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M tests/qemu-iotests/136
Log Message:
-----------
iotests: Make 136 less flaky
136 executes some AIO requests without a final aio_flush; then it
advances the virtual clock and thus expects the last access time of the
device to be less than the current time when queried (i.e. idle_time_ns
to be greater than 0). However, without the aio_flush, some requests
may be settled after the clock_step invocation. In that case,
idle_time_ns would be 0 and the test fails.
Fix this by adding an aio_flush if any AIO request other than some other
aio_flush has been executed.
Signed-off-by: Max Reitz <address@hidden>
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: Stefan Hajnoczi <address@hidden>
Message-id: address@hidden
Signed-off-by: Max Reitz <address@hidden>
Commit: 147b44be492da9620d0b7c455b4d344085322401
https://github.com/qemu/qemu/commit/147b44be492da9620d0b7c455b4d344085322401
Author: Eric Blake <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M tests/qemu-iotests/common.rc
Log Message:
-----------
iotests: Use new-style NBD connections
Old-style NBD is deprecated upstream (it is documented, but no
longer implemented in the reference implementation), and it is
severely limited (it cannot support structured replies, which
means it cannot support efficient handling of zeroes), when
compared to new-style NBD. We are better off having our iotests
favor new-style everywhere (although some explicit tests,
particularly 83, still cover old-style for back-compat reasons);
this is as simple as supplying the empty string as the default
export name, as it does not change the URI needed to connect a
client to the server. This also gives us more coverage of the
just-added structured reply code, when not overriding $QEMU_NBD
to intentionally point to an older server.
Signed-off-by: Eric Blake <address@hidden>
Message-id: address@hidden
Signed-off-by: Max Reitz <address@hidden>
Commit: bcb5270c75a0102d6e95b06a7387bcecb7c410b3
https://github.com/qemu/qemu/commit/bcb5270c75a0102d6e95b06a7387bcecb7c410b3
Author: Alberto Garcia <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M tests/qemu-iotests/060
M tests/qemu-iotests/060.out
Log Message:
-----------
qcow2: Check that corrupted images can be repaired in iotest 060
We just fixed a few bugs that caused QEMU to crash when trying to
write to corrupted qcow2 images, and iotest 060 was expanded to test
all those scenarios.
In almost all cases the corrupted images can be repaired using
qemu-img, so this patch verifies that.
Signed-off-by: Alberto Garcia <address@hidden>
Message-id: address@hidden
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Commit: 04dec3c3ae5c4a4f1fcb684fa264ba166bdb6610
https://github.com/qemu/qemu/commit/04dec3c3ae5c4a4f1fcb684fa264ba166bdb6610
Author: Vladimir Sementsov-Ogievskiy <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M block/snapshot.c
Log Message:
-----------
block/snapshot: dirty all dirty bitmaps on snapshot-switch
Snapshot-switch actually changes active state of disk so it should
reflect on dirty bitmaps. Otherwise next incremental backup using
these bitmaps will be invalid.
Signed-off-by: Vladimir Sementsov-Ogievskiy <address@hidden>
Message-id: address@hidden
Reviewed-by: Eric Blake <address@hidden>
Reviewed-by: John Snow <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Commit: d04c1555031196a51ea79a29b97a61450c02a1fb
https://github.com/qemu/qemu/commit/d04c1555031196a51ea79a29b97a61450c02a1fb
Author: Fam Zheng <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M tests/qemu-iotests/077
M tests/qemu-iotests/077.out
Log Message:
-----------
iotests: 077: Filter out 'resume' lines
In the "Overlapping multiple requests" cases, the 3rd reqs (the break
point B) doesn't wait for the 2nd, and once resumed the I/O will just
continue. This is because the 2nd is already waiting for the 1st, and
in wait_serialising_requests() there is:
/* If the request is already (indirectly) waiting for us, or
* will wait for us as soon as it wakes up, then just go on
* (instead of producing a deadlock in the former case). */
if (!req->waiting_for) {
/* actually break */
...
}
Consequently, the following "sleep 100; resume A" command races with the
completion of that request, and sometimes results in an unexpected
order of output:
> @@ -56,9 +56,9 @@
> wrote XXX/XXX bytes at offset XXX
> XXX bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> blkdebug: Resuming request 'B'
> +blkdebug: Resuming request 'A'
> wrote XXX/XXX bytes at offset XXX
> XXX bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> -blkdebug: Resuming request 'A'
> wrote XXX/XXX bytes at offset XXX
> XXX bytes, X ops; XX:XX:XX.X (XXX YYY/sec and XXX ops/sec)
> wrote XXX/XXX bytes at offset XXX
Filter out the "Resuming request" lines to make the output
deterministic.
Reported-by: Patchew <address@hidden>
Signed-off-by: Fam Zheng <address@hidden>
Message-id: address@hidden
Reviewed-by: Eric Blake <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Commit: 7479bf07c452cc5a3ace46f8e33fd60b25d12234
https://github.com/qemu/qemu/commit/7479bf07c452cc5a3ace46f8e33fd60b25d12234
Author: Jeff Cody <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M block/vhdx.c
Log Message:
-----------
block/vhdx.c: Don't blindly update the header
The VHDX specification requires that before user data modification of
the vhdx image, the VHDX header file and data GUIDs need to be updated.
In vhdx_open(), if the image is set to RDWR, we go ahead and update the
header.
However, just because the image is set to RDWR does not mean we can go
ahead and write at this point - specifically, if the QEMU run state is
INMIGRATE, the underlying file BS may be set to inactive via the BDS
open flag of BDRV_O_INACTIVE. Attempting to write under this condition
will cause an assert in bdrv_co_pwritev().
We can alternatively latch the first time the image is written. And lo
and behold, we do just that, via vhdx_user_visible_write() in
vhdx_co_writev(). This means the call to vhdx_update_headers() in
vhdx_open() is likely just vestigial, and can be removed.
Reported-by: Alexey Kardashevskiy <address@hidden>
Tested-by: Alexey Kardashevskiy <address@hidden>
Signed-off-by: Jeff Cody <address@hidden>
Message-id: address@hidden
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Denis V. Lunev <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Commit: 6c7d390b993c4bbadd51ceeb41f7d2fdd68cb4fd
https://github.com/qemu/qemu/commit/6c7d390b993c4bbadd51ceeb41f7d2fdd68cb4fd
Author: Jeff Cody <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M block/parallels.c
Log Message:
-----------
block/parallels: Do not update header or truncate image when INMIGRATE
If we write or modify the image file while the QEMU run state is
INMIGRATE, then the BDRV_O_INACTIVE BDS flag is set. This will cause
an assert, since the image is marked inactive. Make sure we obey this
flag.
Tested-by: Alexey Kardashevskiy <address@hidden>
Signed-off-by: Jeff Cody <address@hidden>
Message-id: address@hidden
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Denis V. Lunev <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Commit: 1d0f37cf210ae224b98c612981e4df83120b2f0b
https://github.com/qemu/qemu/commit/1d0f37cf210ae224b98c612981e4df83120b2f0b
Author: Jeff Cody <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M block/parallels.c
Log Message:
-----------
block/parallels: add migration blocker
Migration does not work for parallels, and has been broken for a while
(see patch 'block/parallels: Do not update header or truncate image when
INMIGRATE'). The bdrv_invalidate_cache() method needs to be added for
migration to be supported. Until this is done, prohibit migration.
Signed-off-by: Jeff Cody <address@hidden>
Reviewed-by: Fam Zheng <address@hidden>
Message-id: address@hidden
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Denis V. Lunev <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Commit: 8b2d7c364d9a2491f7501f6688cd722045cf808a
https://github.com/qemu/qemu/commit/8b2d7c364d9a2491f7501f6688cd722045cf808a
Author: Jeff Cody <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M tests/qemu-iotests/194
Log Message:
-----------
qemu-iotests: update unsupported image formats in 194
Test 194 checks for 'luks' to exclude as an unsupported format,
However, most formats are unsupported, due to migration blockers.
Rather than specifying a blacklist of unsupported formats, whitelist
supported formats (specifically, qcow2, qed, raw, dmg).
Tested-by: Alexey Kardashevskiy <address@hidden>
Signed-off-by: Jeff Cody <address@hidden>
Message-id: address@hidden
Reviewed-by: Stefan Hajnoczi <address@hidden>
Reviewed-by: Denis V. Lunev <address@hidden>
Signed-off-by: Max Reitz <address@hidden>
Commit: 03d1cbe320211ee60588843abad92f30de1d5ffe
https://github.com/qemu/qemu/commit/03d1cbe320211ee60588843abad92f30de1d5ffe
Author: Peter Maydell <address@hidden>
Date: 2017-11-14 (Tue, 14 Nov 2017)
Changed paths:
M block/parallels.c
M block/qcow2-cluster.c
M block/qcow2-refcount.c
M block/qcow2.c
M block/snapshot.c
M block/vhdx.c
M tests/qemu-iotests/030
M tests/qemu-iotests/040
M tests/qemu-iotests/055
M tests/qemu-iotests/060
M tests/qemu-iotests/060.out
M tests/qemu-iotests/077
M tests/qemu-iotests/077.out
M tests/qemu-iotests/083
M tests/qemu-iotests/136
M tests/qemu-iotests/194
M tests/qemu-iotests/common.rc
Log Message:
-----------
Merge remote-tracking branch 'remotes/maxreitz/tags/pull-block-2017-11-14'
into staging
Block patches for 2.11.0-rc1
# gpg: Signature made Tue 14 Nov 2017 17:22:17 GMT
# gpg: using RSA key 0xF407DB0061D5CF40
# gpg: Good signature from "Max Reitz <address@hidden>"
# Primary key fingerprint: 91BE B60A 30DB 3E88 57D1 1829 F407 DB00 61D5 CF40
* remotes/maxreitz/tags/pull-block-2017-11-14:
qemu-iotests: update unsupported image formats in 194
block/parallels: add migration blocker
block/parallels: Do not update header or truncate image when INMIGRATE
block/vhdx.c: Don't blindly update the header
iotests: 077: Filter out 'resume' lines
block/snapshot: dirty all dirty bitmaps on snapshot-switch
qcow2: Check that corrupted images can be repaired in iotest 060
iotests: Use new-style NBD connections
iotests: Make 136 less flaky
iotests: Make 083 less flaky
iotests: Make 055 less flaky
iotests: Add missing 'blkdebug::' in 040
iotests: Make 030 less flaky
qcow2: Assert that the crypto header does not overlap other metadata
qcow2: Add iotest for an empty refcount table
qcow2: Add iotest for an image with header.refcount_table_offset == 0
qcow2: Don't open images with header.refcount_table_clusters == 0
qcow2: Prevent allocating compressed clusters at offset 0
qcow2: Prevent allocating L2 tables at offset 0
qcow2: Prevent allocating refcount blocks at offset 0
Signed-off-by: Peter Maydell <address@hidden>
Compare: https://github.com/qemu/qemu/compare/29af6de2afce...03d1cbe32021
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Qemu-commits] [qemu/qemu] 6bf45d: qcow2: Prevent allocating refcount blocks at offse...,
GitHub <=