virtio-iommu: Remove the end point on detach
authorEric Auger <eric.auger@redhat.com>
Tue, 16 Jul 2024 09:45:06 +0000 (11:45 +0200)
committerMichael S. Tsirkin <mst@redhat.com>
Tue, 23 Jul 2024 00:15:42 +0000 (20:15 -0400)
We currently miss the removal of the endpoint in case of detach.

Signed-off-by: Eric Auger <eric.auger@redhat.com>
Message-Id: <20240716094619.1713905-5-eric.auger@redhat.com>
Tested-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Cédric Le Goater <clg@redhat.com>
Reviewed-by: Michael S. Tsirkin <mst@redhat.com>
Signed-off-by: Michael S. Tsirkin <mst@redhat.com>
hw/virtio/virtio-iommu.c

index 2de41ab4127d21080286eac037b2ccc007e9c1e9..440dfa6e92a7b61a244de2f48684bbf8cc987f1e 100644 (file)
@@ -786,6 +786,7 @@ static int virtio_iommu_detach(VirtIOIOMMU *s,
     if (QLIST_EMPTY(&domain->endpoint_list)) {
         g_tree_remove(s->domains, GUINT_TO_POINTER(domain->id));
     }
+    g_tree_remove(s->endpoints, GUINT_TO_POINTER(ep_id));
     return VIRTIO_IOMMU_S_OK;
 }