Message ID | 20231215172830.2540987-5-eperezma@redhat.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | Map memory at destination .load_setup in vDPA-net migration | expand |
On Sat, Dec 16, 2023 at 1:28 AM Eugenio Pérez <eperezma@redhat.com> wrote: > > So we can call out vhost_vdpa_dma_end_batch out of the listener > callbacks. > > Signed-off-by: Eugenio Pérez <eperezma@redhat.com> Acked-by: Jason Wang <jasowang@redhat.com> Thanks > --- > hw/virtio/vhost-vdpa.c | 10 ++++++++-- > 1 file changed, 8 insertions(+), 2 deletions(-) > > diff --git a/hw/virtio/vhost-vdpa.c b/hw/virtio/vhost-vdpa.c > index a533fc5bc7..57a8043cd4 100644 > --- a/hw/virtio/vhost-vdpa.c > +++ b/hw/virtio/vhost-vdpa.c > @@ -164,9 +164,8 @@ static void vhost_vdpa_iotlb_batch_begin_once(VhostVDPAShared *s) > s->iotlb_batch_begin_sent = true; > } > > -static void vhost_vdpa_listener_commit(MemoryListener *listener) > +static void vhost_vdpa_dma_end_batch(VhostVDPAShared *s) > { > - VhostVDPAShared *s = container_of(listener, VhostVDPAShared, listener); > struct vhost_msg_v2 msg = {}; > int fd = s->device_fd; > > @@ -190,6 +189,13 @@ static void vhost_vdpa_listener_commit(MemoryListener *listener) > s->iotlb_batch_begin_sent = false; > } > > +static void vhost_vdpa_listener_commit(MemoryListener *listener) > +{ > + VhostVDPAShared *s = container_of(listener, VhostVDPAShared, listener); > + > + vhost_vdpa_dma_end_batch(s); > +} > + > static void vhost_vdpa_iommu_map_notify(IOMMUNotifier *n, IOMMUTLBEntry *iotlb) > { > struct vdpa_iommu *iommu = container_of(n, struct vdpa_iommu, n); > -- > 2.39.3 >
diff --git a/hw/virtio/vhost-vdpa.c b/hw/virtio/vhost-vdpa.c index a533fc5bc7..57a8043cd4 100644 --- a/hw/virtio/vhost-vdpa.c +++ b/hw/virtio/vhost-vdpa.c @@ -164,9 +164,8 @@ static void vhost_vdpa_iotlb_batch_begin_once(VhostVDPAShared *s) s->iotlb_batch_begin_sent = true; } -static void vhost_vdpa_listener_commit(MemoryListener *listener) +static void vhost_vdpa_dma_end_batch(VhostVDPAShared *s) { - VhostVDPAShared *s = container_of(listener, VhostVDPAShared, listener); struct vhost_msg_v2 msg = {}; int fd = s->device_fd; @@ -190,6 +189,13 @@ static void vhost_vdpa_listener_commit(MemoryListener *listener) s->iotlb_batch_begin_sent = false; } +static void vhost_vdpa_listener_commit(MemoryListener *listener) +{ + VhostVDPAShared *s = container_of(listener, VhostVDPAShared, listener); + + vhost_vdpa_dma_end_batch(s); +} + static void vhost_vdpa_iommu_map_notify(IOMMUNotifier *n, IOMMUTLBEntry *iotlb) { struct vdpa_iommu *iommu = container_of(n, struct vdpa_iommu, n);
So we can call out vhost_vdpa_dma_end_batch out of the listener callbacks. Signed-off-by: Eugenio Pérez <eperezma@redhat.com> --- hw/virtio/vhost-vdpa.c | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-)