Re: [PATCH] virtio_balloon: prevent pfn array overflow

From: David Hildenbrand
Date: Thu Feb 06 2020 - 03:29:41 EST


On 06.02.20 08:47, Michael S. Tsirkin wrote:
> Make sure, at build time, that pfn array is big enough to hold a single
> page. It happens to be true since the PAGE_SHIFT value at the moment is
> 20, which is 1M - exactly 256 4K balloon pages.
>
> Signed-off-by: Michael S. Tsirkin <mst@xxxxxxxxxx>
> ---
> drivers/virtio/virtio_balloon.c | 2 ++
> 1 file changed, 2 insertions(+)
>
> diff --git a/drivers/virtio/virtio_balloon.c b/drivers/virtio/virtio_balloon.c
> index 8e400ece9273..2457c54b6185 100644
> --- a/drivers/virtio/virtio_balloon.c
> +++ b/drivers/virtio/virtio_balloon.c
> @@ -158,6 +158,8 @@ static void set_page_pfns(struct virtio_balloon *vb,
> {
> unsigned int i;
>
> + BUILD_BUG_ON(VIRTIO_BALLOON_PAGES_PER_PAGE > VIRTIO_BALLOON_ARRAY_PFNS_MAX);
> +
> /*
> * Set balloon pfns pointing at this page.
> * Note that the first pfn points at start of the page.
>

Reviewed-by: David Hildenbrand <david@xxxxxxxxxx>

--
Thanks,

David / dhildenb