qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH 0/6] AHCI Device Fixes


From: Michael S. Tsirkin
Subject: Re: [Qemu-devel] [PATCH 0/6] AHCI Device Fixes
Date: Sat, 25 Oct 2014 23:03:38 +0300

On Wed, Oct 01, 2014 at 06:55:45PM -0400, John Snow wrote:
> Based off of feedback from the RFC of the same name,
> this series batches together a group of fixes that
> improve the AHCI device to fix a number of bugs.
> 
> A number of fixes included in the RFC that provide more
> radical changes are omitted for now in favor of a smaller,
> more easily reviewable set for QEMU 2.2.

I've been running with this for a while now,
and this patchset seems to have solved the
problems that I observed with random hangs of
windows on AHCI.

Tested-by: Michael S. Tsirkin <address@hidden>

> In summary:
> 
> Patch #1 and #6 correct the format of FIS packet responses
> that are available to the guest operating system upon interrupt.
> 
> Patch #2 corrects an oversight where we do not inform the
> guest how many bytes we've transferred. This is relied upon
> for non-NCQ modes and in some early bootup and shutdown code.
> 
> Patch #5 corrects cases with malformed scatter-gather lists that
> may cause leaks, or cause QEMU to hang in an allocation loop.
> 
> Patch #4 attempts to continue minimizing the divergence of the
> multiple pathways through the AHCI device by re-using existing
> callbacks.
> 
> Taken together, these patches should allow non-ncq operation
> for Windows hosts, as well as enable hibernation for Windows 7.
> 
> Hibernation for Windows 8 and AHCI remains non-functional.
> 
> John Snow (6):
>   ahci: Correct PIO/D2H FIS responses
>   ahci: Update byte count after DMA completion
>   ide: repair PIO transfers for cases where nsector > 1
>   ahci: unify sglist preparation
>   ide: Correct handling of malformed/short PRDTs
>   ahci: Fix SDB FIS Construction
> 
>  dma-helpers.c     |   3 ++
>  hw/ide/ahci.c     | 113 
> ++++++++++++++++++++++++++++++++----------------------
>  hw/ide/ahci.h     |   8 ++++
>  hw/ide/core.c     |  17 ++++++--
>  hw/ide/internal.h |   2 +
>  hw/ide/pci.c      |   5 ++-
>  6 files changed, 97 insertions(+), 51 deletions(-)
> 
> -- 
> 1.9.3



reply via email to

[Prev in Thread] Current Thread [Next in Thread]