There is no need to update the balloon actual register when there is no
ballooning request. This patch avoids update_balloon_size when diff is 0.

Signed-off-by: Wei Wang <wei.w.w...@intel.com>
Reviewed-by: Cornelia Huck <coh...@redhat.com>
Reviewed-by: Halil Pasic <pa...@linux.ibm.com>
Tested-by: Christian Borntraeger <borntrae...@de.ibm.com>
---
 drivers/virtio/virtio_balloon.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/virtio/virtio_balloon.c b/drivers/virtio/virtio_balloon.c
index 45d32f5..d48c12c 100644
--- a/drivers/virtio/virtio_balloon.c
+++ b/drivers/virtio/virtio_balloon.c
@@ -457,9 +457,12 @@ static void update_balloon_size_func(struct work_struct 
*work)
                          update_balloon_size_work);
        diff = towards_target(vb);
 
+       if (!diff)
+               return;
+
        if (diff > 0)
                diff -= fill_balloon(vb, diff);
-       else if (diff < 0)
+       else
                diff += leak_balloon(vb, -diff);
        update_balloon_size(vb);
 
-- 
2.7.4

_______________________________________________
Virtualization mailing list
Virtualization@lists.linux-foundation.org
https://lists.linuxfoundation.org/mailman/listinfo/virtualization

Reply via email to