qemu/hw/vfio
Kunkun Jiang f36d4fb85f vfio/pci: Add support for mmapping sub-page MMIO BARs after live migration
We can expand MemoryRegions of sub-page MMIO BARs in
vfio_pci_write_config() to improve IO performance for some
devices. However, the MemoryRegions of destination VM are
not expanded any more after live migration. Because their
addresses have been updated in vmstate_load_state()
(vfio_pci_load_config) and vfio_sub_page_bar_update_mapping()
will not be called.

This may result in poor performance after live migration.
So iterate BARs in vfio_pci_load_config() and try to update
sub-page BARs.

Reported-by: Nianyao Tang <tangnianyao@huawei.com>
Reported-by: Qixin Gan <ganqixin@huawei.com>
Signed-off-by: Kunkun Jiang <jiangkunkun@huawei.com>
Link: https://lore.kernel.org/r/20211027090406.761-2-jiangkunkun@huawei.com
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
2021-11-01 12:17:51 -06:00
..
amd-xgbe.c Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
ap.c target/s390x: move kvm files into kvm/ 2021-07-07 14:01:59 +02:00
calxeda-xgmac.c Include migration/vmstate.h less 2019-08-16 13:31:52 +02:00
ccw.c vfio-ccw: forward halt/clear errors 2021-09-06 16:22:54 +02:00
common.c memory: Name all the memory listeners 2021-09-30 15:30:24 +02:00
display.c Do not include sysemu/sysemu.h if it's not really necessary 2021-05-02 17:24:50 +02:00
igd.c hw/vfio: Fix typo in comments 2021-09-16 11:57:01 +02:00
Kconfig hw/vfio: Move the IGD quirk code to a separate file 2020-02-06 11:55:42 -07:00
meson.build vfio: Add migration region initialization and finalize function 2020-11-01 12:30:50 -07:00
migration.c vfio: Avoid error_propagate() after migrate_add_blocker() 2021-08-26 17:15:28 +02:00
pci-quirks.c hw/vfio: Fix typo in comments 2021-09-16 11:57:01 +02:00
pci.c vfio/pci: Add support for mmapping sub-page MMIO BARs after live migration 2021-11-01 12:17:51 -06:00
pci.h hw/vfio/pci-quirks: Replace the word 'blacklist' 2021-03-16 10:06:44 -06:00
platform.c hw/vfio: Fix typo in comments 2021-09-16 11:57:01 +02:00
spapr.c memory: Name all the memory listeners 2021-09-30 15:30:24 +02:00
trace-events docs: fix references to docs/devel/tracing.rst 2021-06-02 06:51:09 +02:00
trace.h trace: switch position of headers to what Meson requires 2020-08-21 06:18:24 -04:00