[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [PATCH 2/3] hw/virtio: Remove NULL check in virtio_free_region_cache
From: |
Stefan Hajnoczi |
Subject: |
Re: [PATCH 2/3] hw/virtio: Remove NULL check in virtio_free_region_cache() |
Date: |
Thu, 2 Sep 2021 13:07:47 +0100 |
On Thu, Aug 26, 2021 at 07:26:57PM +0200, Philippe Mathieu-Daudé wrote:
> virtio_free_region_cache() is called within call_rcu(),
> always with a non-NULL argument. Ensure new code keep it
> that way by replacing the NULL check by an assertion.
> Add a comment this function is called within call_rcu().
>
> Signed-off-by: Philippe Mathieu-Daudé <philmd@redhat.com>
> ---
> hw/virtio/virtio.c | 6 ++----
> 1 file changed, 2 insertions(+), 4 deletions(-)
>
> diff --git a/hw/virtio/virtio.c b/hw/virtio/virtio.c
> index a5214bca612..3a1f6c520cb 100644
> --- a/hw/virtio/virtio.c
> +++ b/hw/virtio/virtio.c
> @@ -133,12 +133,10 @@ struct VirtQueue
> QLIST_ENTRY(VirtQueue) node;
> };
>
> +/* Called within call_rcu(). */
> static void virtio_free_region_cache(VRingMemoryRegionCaches *caches)
> {
> - if (!caches) {
> - return;
> - }
> -
> + assert(caches != NULL);
> address_space_cache_destroy(&caches->desc);
> address_space_cache_destroy(&caches->avail);
> address_space_cache_destroy(&caches->used);
Looks like an artifact that was left in when the code was originally
introduced in commit c611c76417f52b335ecaab01c61743e3b705eb7c ("virtio:
add MemoryListener to cache ring translations"). Paolo could confirm
this.
Reviewed-by: Stefan Hajnoczi <stefanha@redhat.com>
signature.asc
Description: PGP signature