]> asedeno.scripts.mit.edu Git - linux.git/commitdiff
virtio-balloon: improve update_balloon_size_func
authorWei Wang <wei.w.wang@intel.com>
Mon, 7 Jan 2019 07:01:05 +0000 (15:01 +0800)
committerMichael S. Tsirkin <mst@redhat.com>
Wed, 6 Mar 2019 16:19:33 +0000 (11:19 -0500)
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.wang@intel.com>
Reviewed-by: Cornelia Huck <cohuck@redhat.com>
Reviewed-by: Halil Pasic <pasic@linux.ibm.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
drivers/virtio/virtio_balloon.c

index fb12fe205f86669b68a885c4e377e0342bb9ed85..e33dc8e9e87ddd2d08f31347bfb56c04b708ed1f 100644 (file)
@@ -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);