summaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorMax Reitz2017-11-10 21:31:11 +0100
committerMax Reitz2017-11-17 18:21:31 +0100
commit4efb1f7c612ff35badc8f8cbda78ac891fabf20a (patch)
tree5bb105e16e9493122bdbc8e26c41e680bb53fd27 /include
parentqcow2: Add bounds check to get_refblock_offset() (diff)
downloadqemu-4efb1f7c612ff35badc8f8cbda78ac891fabf20a.tar.gz
qemu-4efb1f7c612ff35badc8f8cbda78ac891fabf20a.tar.xz
qemu-4efb1f7c612ff35badc8f8cbda78ac891fabf20a.zip
qcow2: Refuse to get unaligned offsets from cache
Instead of using an assertion, it is better to emit a corruption event here. Checking all offsets for correct alignment can be tedious and it is easily possible to forget to do so. qcow2_cache_do_get() is a function every L2 and refblock access has to go through, so this is a good central point to add such a check. And for good measure, let us also add an assertion that the offset is non-zero. Making this a corruption event is not feasible, because a zero offset usually means something special (such as the cluster is unused), so all callers should be checking this anyway. If they do not, it is their fault, hence the assertion here. Signed-off-by: Max Reitz <mreitz@redhat.com> Message-id: 20171110203111.7666-6-mreitz@redhat.com Reviewed-by: Eric Blake <eblake@redhat.com> Reviewed-by: Alberto Garcia <berto@igalia.com> Signed-off-by: Max Reitz <mreitz@redhat.com>
Diffstat (limited to 'include')
0 files changed, 0 insertions, 0 deletions