Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

virtio: update balloon size in balloon "probe"

The following commit 'fad7b7b27b6a (virtio_balloon: Use a workqueue
instead of "vballoon" kthread)' has added a regression. Original code with
kthread starts the thread inside probe and checks the necessity to update
balloon inside the thread immediately.

Nowadays the code behaves differently. Work is queued only on the first
command from the host after the negotiation. Thus there is a window
especially at the guest startup or the module reloading when the balloon
size is not updated until the notification from the host.

This patch adds balloon size check at the end of the probe to match
original behaviour.

Signed-off-by: Konstantin Neumoin <kneumoin@virtuozzo.com>
Signed-off-by: Denis V. Lunev <den@openvz.org>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>

authored by

Konstantin Neumoin and committed by
Michael S. Tsirkin
8424af53 0ea1e4a6

+2
+2
drivers/virtio/virtio_balloon.c
··· 577 577 578 578 virtio_device_ready(vdev); 579 579 580 + if (towards_target(vb)) 581 + virtballoon_changed(vdev); 580 582 return 0; 581 583 582 584 out_del_vqs: