]> git.proxmox.com Git - mirror_qemu.git/commit
memory: seek FlatView sharing candidates among children subregions
authorPaolo Bonzini <pbonzini@redhat.com>
Thu, 21 Sep 2017 10:28:16 +0000 (12:28 +0200)
committerPaolo Bonzini <pbonzini@redhat.com>
Thu, 21 Sep 2017 23:06:51 +0000 (01:06 +0200)
commite673ba9af9bf8fd8e0f44025ac738b8285b3ed27
tree56328fc7966a29571b9d1eefdf48d6a2853b2063
parent02d9651d6a46479e9d70b72dca34e43605d06cda
memory: seek FlatView sharing candidates among children subregions

A container can be used instead of an alias to allow switching between
multiple subregions.  In this case we cannot directly share the
subregions (since they only belong to a single parent), but if the
subregions are aliases we can in turn walk those.

This is not enough to remove all source of quadratic FlatView creation,
but it enables sharing of the PCI bus master FlatViews (and their
AddressSpaceDispatch structures) across all PCI devices.  For 112
virtio-net-pci devices, boot time is reduced from 25 to 10 seconds and
memory consumption from 1.4 to 1 G.

Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
memory.c