Il 06/05/2014 22:01, Chris Friesen ha scritto:
It seems like the main problem is that we loop over all the queues, calling virtio_pci_set_host_notifier_internal() on each of them. That in turn calls memory_region_add_eventfd(), which calls memory_region_transaction_commit(), which scans over all the address spaces, which seems to take the vast majority of the time.
Yes, you can wrap the entire loop with memory_region_transaction_begin and memory_region_transaction_commit. Can you try that?
Paolo