These patches add ability to measure speed of MMIO versus PIO, in different configurations. As I didn't want to reserve a hardcoded range of memory, I added pci bus scan support instead. Used together with the new pci-testdev backend. When not present, the new tests are skipped. Example output: mmio-no-eventfd:pci-mem 8796 mmio-wildcard-eventfd:pci-mem 3609 mmio-datamatch-eventfd:pci-mem 3685 portio-no-eventfd:pci-io 5287 portio-wildcard-eventfd:pci-io 1762 portio-datamatch-eventfd:pci-io 1777 First interesting conclusion is that the overhead of MMIO exit to QEMU as compared to PIO is double that of MMIO ioeventfd as compared to PIO eventfd. Is this a known fact? Michael S. Tsirkin (5): kvm-unittest: add printf %c support kvm-unittest: libcflat: add offsetof libcflat.h: define NULL lib: add pci bus scan support vmexit: add pci io and memory speed tests config-x86-common.mak | 1 + lib/libcflat.h | 3 + lib/printf.c | 3 + lib/x86/pci.c | 55 ++++++++++++ lib/x86/pci.h | 16 ++++ x86-run | 13 ++- x86/vmexit.c | 226 +++++++++++++++++++++++++++++++++++++++++++++++--- 7 files changed, 302 insertions(+), 15 deletions(-) create mode 100644 lib/x86/pci.c create mode 100644 lib/x86/pci.h -- MST -- To unsubscribe from this list: send the line "unsubscribe kvm" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html