qemu-e2k/hw/ide
Markus Armbruster 58ac321135 ide: Treat read/write beyond end as invalid
The block layer fails such reads and writes just fine.  However, they
then get treated like valid operations that fail: the error action
gets executed.  Unwanted; reporting the error to the guest is the only
sensible action.

Reject them before passing them to the block layer.  This bypasses the
error action and I/O accounting.  Not quite correct for DMA, because
DMA can fail after some success, and when that happens, the part that
succeeded isn't counted.  Tolerable, because I/O accounting is an
inconsistent mess anyway.

Signed-off-by: Markus Armbruster <armbru@redhat.com>
Signed-off-by: Kevin Wolf <kwolf@redhat.com>
2014-07-14 12:03:21 +02:00
..
Makefile.objs hw: make all of hw/ide/ configurable via default-configs/ 2013-04-08 18:13:12 +02:00
ahci.c ahci: map memory via device's address space instead of address_space_memory 2014-07-07 10:22:43 +02:00
ahci.h ahci.c: mask unused flags when reading size PRDT DBC 2014-07-07 09:15:29 +02:00
atapi.c bswap.h: Remove cpu_to_be16wu() 2013-11-05 19:57:47 -08:00
cmd646.c hw: set interrupts using pci irq wrappers 2013-10-14 17:11:45 +03:00
core.c ide: Treat read/write beyond end as invalid 2014-07-14 12:03:21 +02:00
ich.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
internal.h ide: Drop ide_init2_with_non_qdev_drives() 2013-11-05 18:06:52 +01:00
isa.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
macio.c macio ide: Do remainder access asynchronously 2014-06-16 13:24:38 +02:00
microdrive.c hw: Fix qemu_allocate_irqs() leaks 2014-06-30 21:13:30 +02:00
mmio.c savevm: Remove all the unneeded version_minimum_id_old (rest) 2014-05-14 15:24:51 +02:00
pci.c savevm: Remove all the unneeded version_minimum_id_old (x86) 2014-06-16 04:55:26 +02:00
pci.h ide: Introduce abstract QOM type for PCIIDEState 2013-07-29 20:41:49 +02:00
piix.c blockdev: Remove unused DriveInfo reference count 2014-06-16 17:23:19 +08:00
qdev.c qdev: Remove hex8/32/64 property types 2014-02-14 21:12:04 +01:00
via.c vt82c686: Clean up use of cannot_instantiate_with_device_add_yet 2013-12-23 00:27:23 +01:00