qemu-e2k/hw/ide
Ladi Prosek 98cb5dccb1 ahci: advertise HOST_CAP_64
The AHCI emulation code supports 64-bit addressing and should advertise this
fact in the Host Capabilities register. Both Linux and Windows drivers test
this bit to decide if the upper 32 bits of various registers may be written
to, and at least some versions of Windows have a bug where DMA is attempted
with an address above 4GB but, in the absence of HOST_CAP_64, the upper 32
bits are left unititialized which leads to a memory corruption.

[Maintainer edit:

This fixes https://bugzilla.redhat.com/show_bug.cgi?id=1411105,
which affects Windows Server 2008 SP2 in some cases.]

Signed-off-by: Ladi Prosek <lprosek@redhat.com>
Message-id: 1484305370-6220-1-git-send-email-lprosek@redhat.com
[Amended commit message --js]
Signed-off-by: John Snow <jsnow@redhat.com>
2017-02-10 11:47:11 -05:00
..
ahci.c ahci: advertise HOST_CAP_64 2017-02-10 11:47:11 -05:00
atapi.c atapi: classify read_cd as conditionally returning data 2016-11-14 11:15:54 -05:00
cmd646.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
core.c dma-helpers: explicitly pass alignment into DMA helpers 2016-10-27 16:29:13 -04:00
ich.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
isa.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
macio.c macio: switch over to new byte-aligned DMA helpers 2016-10-27 16:29:13 -04:00
Makefile.objs
microdrive.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
mmio.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
pci.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00
piix.c xen-platform: add missing disk unplug option 2017-01-27 15:23:29 -08:00
qdev.c ide: Fix memory leak in ide_register_restart_cb() 2016-09-29 15:50:29 -04:00
via.c Use #include "..." for our own headers, <...> for others 2016-07-12 16:19:16 +02:00