qemu-devel
[Top][All Lists]
Advanced

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

Re: [Qemu-devel] [block PATCH v2 0/3] AHCI device fixes


From: Stefan Hajnoczi
Subject: Re: [Qemu-devel] [block PATCH v2 0/3] AHCI device fixes
Date: Thu, 13 Nov 2014 10:04:39 +0000
User-agent: Mutt/1.5.23 (2014-03-12)

On Fri, Oct 31, 2014 at 04:03:36PM -0400, John Snow wrote:
> This is a v2 patch series that collects patches 3, 4 and 5
> from the v1 series that was only partially merged.
> 
> This series, as a subset, generally cleans up the usage and
> handling of the scatter-gather list implementation in QEMU
> that interacts with the PRDT (Physical Region Descriptor Table)
> in AHCI.
> 
> We also repair a small oversight with PIO transfers.
> 
> This series currently applies cleanly to stefanha's block staging
> tree, but can be trivially merged to master.
> 
> v2:
> - Reset io_buffer_offset to 0 at the beginning of ide_exec_cmd,
>   which will reset it for PIO I/O and all ATAPI commands.
>   There was an oversight in V1 where we would use junk values for
>   PACKET IDENTIFY if it was not the first command.
> 
> - Adjust the prepare_buf() callback to return, simply, the number
>   of bytes it was able to prepare, or -1 on error. This resolves
>   an ambiguity around the nature of its return code meaning
>   "no sectors" or "no bytes" which led to bad error pathways.
> 
> John Snow (3):
>   ide: repair PIO transfers for cases where nsector > 1
>   ahci: unify sglist preparation
>   ide: Correct handling of malformed/short PRDTs
> 
>  hw/ide/ahci.c     | 33 ++++++++++++++++++++++++++-------
>  hw/ide/core.c     | 14 ++++++++++++--
>  hw/ide/internal.h | 13 +++++++------
>  hw/ide/macio.c    |  7 ++++++-
>  hw/ide/pci.c      | 27 +++++++++++++++++++++------
>  5 files changed, 72 insertions(+), 22 deletions(-)
> 
> -- 
> 1.9.3
> 
> 

Thanks, applied to my block tree:
https://github.com/stefanha/qemu/commits/block

Stefan

Attachment: pgp264i0QwkWj.pgp
Description: PGP signature


reply via email to

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