postcopy: Synchronize usage of the balloon inhibitor
commit154304cd6e99e4222ed762976f9d9aca33c094d3
authorAlex Williamson <alex.williamson@redhat.com>
Thu, 23 Aug 2018 16:45:58 +0000 (23 10:45 -0600)
committerAlex Williamson <alex.williamson@redhat.com>
Thu, 23 Aug 2018 16:45:58 +0000 (23 10:45 -0600)
tree2741499bcd5a107f249432462447d0afbf7789d1
parent8709b3954d4161bad30ccc435408ec50e10f53cc
postcopy: Synchronize usage of the balloon inhibitor

While the qemu_balloon_inhibit() interface appears rather general purpose,
postcopy uses it in a last-caller-wins approach with no guarantee of balanced
inhibits and de-inhibits.  Wrap postcopy's usage of the inhibitor to give it
one vote overall, using the same last-caller-wins approach as previously
implemented at the balloon level.

Fixes: 01ccbec7bdf6 ("balloon: Allow multiple inhibit users")
Reported-by: Christian Borntraeger <borntraeger@de.ibm.com>
Tested-by: Christian Borntraeger <borntraeger@de.ibm.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Juan Quintela <quintela@redhat.com>
Signed-off-by: Alex Williamson <alex.williamson@redhat.com>
migration/postcopy-ram.c