qemu-irix/tests
Max Reitz 4efb1f7c61 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>
2017-11-17 18:21:31 +01:00
..
acpi-test-data tests/acpi-test-data: update _CRS in DSDT 2017-11-16 17:46:53 +02:00
data
docker docker: correctly escape $BACKEND in the help output 2017-11-08 10:59:42 +08:00
guest-debug
image-fuzzer
keys tests: Add a test key pair 2017-09-22 10:46:25 +08:00
libqos tests: use g_new() family of functions 2017-10-16 13:29:49 +02:00
migration scripts: Remove debug parameter from QEMUMachine 2017-10-11 15:15:17 -03:00
multiboot
qapi-schema
qemu-iotests qcow2: Refuse to get unaligned offsets from cache 2017-11-17 18:21:31 +01:00
rocker
tcg
vm basevm: Call logging.basicConfig() 2017-10-11 15:15:17 -03:00
vmstate-static-checker-data
.gitignore tests: Add check-qobject for equality tests 2017-11-17 18:21:30 +01:00
Makefile.include tests: Add check-qobject for equality tests 2017-11-17 18:21:30 +01:00
ac97-test.c
acpi-utils.c
acpi-utils.h tests/bios-tables-test: Fix endianess problems when passing data to iasl 2017-11-16 18:36:54 +02:00
ahci-test.c tests: use g_new() family of functions 2017-10-16 13:29:49 +02:00
atomic_add-bench.c
benchmark-crypto-cipher.c
benchmark-crypto-hash.c
benchmark-crypto-hmac.c
bios-tables-test.c tests/bios-tables-test: Fix endianess problems when passing data to iasl 2017-11-16 18:36:54 +02:00
boot-order-test.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
boot-sector.c tests/boot-sector: Increase timeout to 600 seconds 2017-09-26 09:11:23 +03:00
boot-sector.h
boot-serial-test.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
check-block.sh
check-qdict.c
check-qjson.c
check-qlist.c
check-qlit.c
check-qnull.c qapi/qnull: Add own header 2017-11-17 18:21:30 +01:00
check-qnum.c
check-qobject.c tests: Add check-qobject for equality tests 2017-11-17 18:21:30 +01:00
check-qom-interface.c
check-qom-proplist.c
check-qstring.c
crypto-tls-x509-helpers.c
crypto-tls-x509-helpers.h
device-introspect-test.c
display-vga-test.c
drive_del-test.c tests: Enable the drive_del test also on s390x 2017-09-19 18:21:32 +02:00
ds1338-test.c
e1000-test.c
e1000e-test.c
eepro100-test.c
endianness-test.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
es1370-test.c
fdc-test.c
fw_cfg-test.c tests: use g_new() family of functions 2017-10-16 13:29:49 +02:00
hd-geo-test.c
i440fx-test.c
i82801b11-test.c
ide-test.c
intel-hda-test.c
io-channel-helpers.c
io-channel-helpers.h
ioh3420-test.c
iothread.c
iothread.h
ipmi-bt-test.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
ipmi-kcs-test.c
ipoctal232-test.c
ivshmem-test.c
libqtest.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
libqtest.h libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
m25p80-test.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
m48t59-test.c
megasas-test.c
migration-test.c tests: check that migration parameters are really assigned 2017-10-29 14:06:16 +01:00
ne2000-test.c
numa-test.c numa-test: Use hmp() 2017-09-15 09:05:19 +02:00
nvme-test.c
pc-cpu-test.c tests: use g_new() family of functions 2017-10-16 13:29:49 +02:00
pcnet-test.c
pkix_asn1_tab.c
pnv-xscom-test.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
prom-env-test.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
ptimer-test-stubs.c ptimer-test: do not link to libqemustub.a/libqemuutil.a 2017-09-19 16:19:39 +02:00
ptimer-test.c
ptimer-test.h
pvpanic-test.c
pxe-test.c tests/pxe: Test more NICs when running in SPEED=slow mode 2017-10-15 05:54:44 +03:00
q35-test.c
qemu-iotests-quick.sh
qht-bench.c tcg: define CF_PARALLEL and use it for TB hashing along with CF_COUNT_MASK 2017-10-24 13:53:41 -07:00
qmp-test.c
qom-test.c
rcutorture.c
rtas-test.c
rtc-test.c
rtl8139-test.c
spapr-phb-test.c
tco-test.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
test-aio-multithread.c tests-aio-multithread: fix /aio/multi/schedule race condition 2017-11-08 09:22:55 +00:00
test-aio.c
test-arm-mptimer.c
test-base64.c
test-bitcnt.c
test-bitops.c
test-blockjob-txn.c
test-blockjob.c
test-bufferiszero.c
test-char.c
test-clone-visitor.c
test-coroutine.c
test-crypto-afsplit.c
test-crypto-block.c tests: Run the luks tests in test-crypto-block only if encryption is available 2017-11-08 11:03:46 +00:00
test-crypto-cipher.c
test-crypto-hash.c
test-crypto-hmac.c
test-crypto-ivgen.c
test-crypto-pbkdf.c
test-crypto-secret.c
test-crypto-tlscredsx509.c
test-crypto-tlssession.c
test-crypto-xts.c
test-cutils.c
test-filter-mirror.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
test-filter-redirector.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
test-hbitmap.c hbitmap: Rename serialization_granularity to serialization_align 2017-10-06 16:28:58 +02:00
test-hmp.c qtest: Avoid passing raw strings through hmp() 2017-09-15 09:05:19 +02:00
test-int128.c
test-io-channel-buffer.c
test-io-channel-command.c
test-io-channel-file.c
test-io-channel-socket.c
test-io-channel-tls.c
test-io-task.c
test-iov.c
test-keyval.c
test-logging.c
test-mul64.c
test-netfilter.c
test-opts-visitor.c
test-qapi-util.c
test-qdev-global-props.c
test-qdist.c
test-qemu-opts.c
test-qga.c test-qga: Kill broken and dead QGA_TEST_SIDE_EFFECTING code 2017-09-15 09:05:18 +02:00
test-qht-par.c
test-qht.c
test-qmp-commands.c
test-qmp-event.c
test-qobject-input-visitor.c
test-qobject-output-visitor.c
test-rcu-list.c
test-replication.c
test-shift128.c
test-string-input-visitor.c
test-string-output-visitor.c
test-thread-pool.c
test-throttle.c
test-timed-average.c
test-uuid.c
test-visitor-serialization.c
test-vmstate.c migration: Route more error paths 2017-09-27 11:44:18 +01:00
test-write-threshold.c
test-x86-cpuid-compat.c
test-x86-cpuid.c
test-xbzrle.c
tmp105-test.c
tpci200-test.c
usb-hcd-ehci-test.c
usb-hcd-ohci-test.c
usb-hcd-uhci-test.c tests: Introduce generic device hot-plug/hot-unplug functions 2017-09-15 09:05:18 +02:00
usb-hcd-xhci-test.c tests: Introduce generic device hot-plug/hot-unplug functions 2017-09-15 09:05:18 +02:00
vhost-user-bridge.c vhost-user-bridge: Only process received packets on started queues 2017-10-12 16:57:42 +02:00
vhost-user-test.c
virtio-9p-test.c
virtio-balloon-test.c tests: Enable the very simple virtio tests on s390x, too 2017-10-20 13:32:10 +02:00
virtio-blk-test.c libqtest: Add qtest_[v]startf() 2017-10-20 13:32:10 +02:00
virtio-console-test.c tests: Enable the very simple virtio tests on s390x, too 2017-10-20 13:32:10 +02:00
virtio-net-test.c
virtio-rng-test.c
virtio-scsi-test.c scsi: move block/scsi.h to include/scsi/constants.h 2017-09-19 14:09:31 +02:00
virtio-serial-test.c tests: Enable the very simple virtio tests on s390x, too 2017-10-20 13:32:10 +02:00
vmgenid-test.c tests/bios-tables-test: Fix endianess problems when passing data to iasl 2017-11-16 18:36:54 +02:00
vmxnet3-test.c
wdt_ib700-test.c