On Mon, Oct 24, 2016 at 03:59:49PM +1100, David Gibson wrote: > This series contains a number of cleanups to the libqos code for > accessing PCI devices, and to tests which use it. > > The general aim is to improve the consistency of semantics across > functions, and reduce the amount of intimate knowledge of the libqos > PCI layer needed by tests. > > This should make it easier to write PCI tests which will be portable > to different guest machines with different PCI host bridge > arrangements. > > This series is on top of my ppc-for-2.8 branch, since it contains > patches enabling the virtio tests on ppc, which would otherwise > conflict with the changes here. Greg, Alexey, Michael, Some reviews from outside RH would be really welcome. > > Changes since v4: > * Fixed some remaining abstraction breaks in ahci-test > * Removed QPCI_BAR_INVALID, turned out not to really be useful > > Changes since v3: > * Fixed another endian bug introduced in ide-test > > Changes since v2: > * Fixed build bugs in virtio-9p-test, which I didn't find earlier > due to not having the right libraries installed > * Fixed an endian bug I accidentally introduced in ide-test > * Better handling of invalid BAR tokens > > Changes since v1: > * Split out updates to tco-test into separate patch > * Split out updates to ide-test into separate patch > * Neater and more general handling of legacy PIO addresses > * Removed now-redundant fields from platform specific bus structures > * Introduced CONFIG_BASE() macro to virtio-pci to remove many > similar assignments > * Fixed handling of two guest testcasesin ivshmem > * Added 64-bit accessors > * Rebase on ppc-for-2.8 to avoid conflict with Laurent's series in > the same area > > David Gibson (12): > libqos: Give qvirtio_config_read*() consistent semantics > libqos: Handle PCI IO de-multiplexing in common code > libqos: Move BAR assignment to common code > libqos: Better handling of PCI legacy IO > tests: Adjust tco-test to use qpci_legacy_iomap() > libqos: Add streaming accessors for PCI MMIO > libqos: Implement mmio accessors in terms of mem{read,write} > tests: Clean up IO handling in ide-test > libqos: Add 64-bit PCI IO accessors > tests: Use qpci_mem{read,write} in ivshmem-test > tests: Don't assume structure of PCI IO base in ahci-test > libqos: Change PCI accessors to take opaque BAR handle > > tests/ahci-test.c | 13 +-- > tests/e1000e-test.c | 7 +- > tests/ide-test.c | 177 +++++++++++++++++++++++++++-------------- > tests/ivshmem-test.c | 47 +++++++---- > tests/libqos/ahci.c | 4 +- > tests/libqos/ahci.h | 7 +- > tests/libqos/pci-pc.c | 187 ++++++++++--------------------------------- > tests/libqos/pci-spapr.c | 194 ++++++++++++--------------------------------- > tests/libqos/pci.c | 194 +++++++++++++++++++++++++++++++++++++-------- > tests/libqos/pci.h | 66 ++++++++++----- > tests/libqos/usb.c | 6 +- > tests/libqos/usb.h | 2 +- > tests/libqos/virtio-mmio.c | 16 ++-- > tests/libqos/virtio-pci.c | 122 ++++++++++++++-------------- > tests/libqos/virtio-pci.h | 2 +- > tests/rtl8139-test.c | 10 +-- > tests/tco-test.c | 80 +++++++++---------- > tests/usb-hcd-ehci-test.c | 5 +- > tests/virtio-9p-test.c | 8 +- > tests/virtio-blk-test.c | 42 +++------- > tests/virtio-scsi-test.c | 4 +- > 21 files changed, 598 insertions(+), 595 deletions(-) > -- David Gibson | I'll have my music baroque, and my code david AT gibson.dropbear.id.au | minimalist, thank you. NOT _the_ _other_ | _way_ _around_! http://www.ozlabs.org/~dgibson