Messages in this thread Patch in this message | | | From | Alexander Atanasov <> | Subject | [PATCH v2 4/4] drivers: virtio: balloon - update inflated memory | Date | Tue, 16 Aug 2022 12:41:17 +0300 |
| |
Update the inflated memory when it changes.
Signed-off-by: Alexander Atanasov <alexander.atanasov@virtuozzo.com> --- drivers/virtio/virtio_balloon.c | 5 +++++ 1 file changed, 5 insertions(+)
diff --git a/drivers/virtio/virtio_balloon.c b/drivers/virtio/virtio_balloon.c index 6f69e483d98a..c8093c704c2f 100644 --- a/drivers/virtio/virtio_balloon.c +++ b/drivers/virtio/virtio_balloon.c @@ -450,10 +450,15 @@ static void virtballoon_changed(struct virtio_device *vdev) static void update_balloon_size(struct virtio_balloon *vb) { u32 actual = vb->num_pages; + long inflated_kb = actual << (VIRTIO_BALLOON_PFN_SHIFT - 10); /* Legacy balloon config space is LE, unlike all other devices. */ virtio_cwrite_le(vb->vdev, struct virtio_balloon_config, actual, &actual); + if (virtio_has_feature(vb->vdev, VIRTIO_BALLOON_F_DEFLATE_ON_OOM)) + balloon_set_inflated_free(inflated_kb); + else + balloon_set_inflated_total(inflated_kb); } static void update_balloon_stats_func(struct work_struct *work) -- 2.31.1
| |