[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [block PATCH v2 0/3] AHCI device fixes
From: |
John Snow |
Subject: |
[Qemu-devel] [block PATCH v2 0/3] AHCI device fixes |
Date: |
Fri, 31 Oct 2014 16:03:36 -0400 |
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
- [Qemu-devel] [block PATCH v2 0/3] AHCI device fixes,
John Snow <=