virtio-balloon: improve update_balloon_size_func

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>
This commit is contained in:
Wei Wang 2019-01-07 15:01:05 +08:00 committed by Michael S. Tsirkin
parent fd1068e186
commit 53e946cb34

View 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);