search for: mlx5_vdpa_handle_set_map

Displaying 15 results from an estimated 15 matches for "mlx5_vdpa_handle_set_map".

2020 Sep 17
1
[PATCH v2 -next] vdpa: mlx5: change Kconfig depends to fix build errors
...to `vhost_iotlb_itree_next' ld: drivers/vdpa/mlx5/core/mr.o: in function `_mlx5_vdpa_create_mr': mr.c:(.text+0x908): undefined reference to `vhost_iotlb_itree_first' ld: mr.c:(.text+0x9e6): undefined reference to `vhost_iotlb_itree_next' ld: drivers/vdpa/mlx5/core/mr.o: in function `mlx5_vdpa_handle_set_map': mr.c:(.text+0xf1d): undefined reference to `vhost_iotlb_itree_first' Signed-off-by: Randy Dunlap <rdunlap at infradead.org> Cc: "Michael S. Tsirkin" <mst at redhat.com> Cc: Jason Wang <jasowang at redhat.com> Cc: virtualization at lists.linux-foundation.org Cc...
2020 Sep 28
0
[PATCH V1 vhost-next] vdpa/mlx5: Make vdpa core driver a distinct module
...*mvdev) > { > @@ -456,6 +457,7 @@ void mlx5_vdpa_destroy_mr(struct mlx5_vdpa_dev *mvdev) > out: > mutex_unlock(&mr->mkey_mtx); > } > +EXPORT_SYMBOL(mlx5_vdpa_destroy_mr); > > static bool map_empty(struct vhost_iotlb *iotlb) > { > @@ -484,3 +486,4 @@ int mlx5_vdpa_handle_set_map(struct mlx5_vdpa_dev *mvdev, struct vhost_iotlb *io > > return err; > } > +EXPORT_SYMBOL(mlx5_vdpa_handle_set_map); > diff --git a/drivers/vdpa/mlx5/core/resources.c b/drivers/vdpa/mlx5/core/resources.c > index 96e6421c5d1c..89606a18e286 100644 > --- a/drivers/vdpa/mlx5/co...
2020 Sep 29
0
[PATCH V1 vhost-next] vdpa/mlx5: Make vdpa core driver a distinct module
...dpa_dev *mvdev) > > > out: > > > mutex_unlock(&mr->mkey_mtx); > > > } > > > +EXPORT_SYMBOL(mlx5_vdpa_destroy_mr); > > > > > > static bool map_empty(struct vhost_iotlb *iotlb) > > > { > > > @@ -484,3 +486,4 @@ int mlx5_vdpa_handle_set_map(struct mlx5_vdpa_dev *mvdev, struct vhost_iotlb *io > > > > > > return err; > > > } > > > +EXPORT_SYMBOL(mlx5_vdpa_handle_set_map); > > > diff --git a/drivers/vdpa/mlx5/core/resources.c b/drivers/vdpa/mlx5/core/resources.c > > > index 96e64...
2020 Sep 29
0
[PATCH V1 vhost-next] vdpa/mlx5: Make vdpa core driver a distinct module
...unlock(&mr->mkey_mtx); > > > > > } > > > > > +EXPORT_SYMBOL(mlx5_vdpa_destroy_mr); > > > > > > > > > > static bool map_empty(struct vhost_iotlb *iotlb) > > > > > { > > > > > @@ -484,3 +486,4 @@ int mlx5_vdpa_handle_set_map(struct mlx5_vdpa_dev *mvdev, struct vhost_iotlb *io > > > > > > > > > > return err; > > > > > } > > > > > +EXPORT_SYMBOL(mlx5_vdpa_handle_set_map); > > > > > diff --git a/drivers/vdpa/mlx5/core/resources.c b/drivers/vdp...
2020 Sep 29
0
[PATCH V1 vhost-next] vdpa/mlx5: Make vdpa core driver a distinct module
...> } > > > > > > > +EXPORT_SYMBOL(mlx5_vdpa_destroy_mr); > > > > > > > > > > > > > > static bool map_empty(struct vhost_iotlb *iotlb) > > > > > > > { > > > > > > > @@ -484,3 +486,4 @@ int mlx5_vdpa_handle_set_map(struct mlx5_vdpa_dev *mvdev, struct vhost_iotlb *io > > > > > > > > > > > > > > return err; > > > > > > > } > > > > > > > +EXPORT_SYMBOL(mlx5_vdpa_handle_set_map); > > > > > > > diff --git...
2020 Sep 17
0
[PATCH -next] vdpa: mlx5: select VHOST to fix build errors
...to `vhost_iotlb_itree_next' ld: drivers/vdpa/mlx5/core/mr.o: in function `_mlx5_vdpa_create_mr': mr.c:(.text+0x908): undefined reference to `vhost_iotlb_itree_first' ld: mr.c:(.text+0x9e6): undefined reference to `vhost_iotlb_itree_next' ld: drivers/vdpa/mlx5/core/mr.o: in function `mlx5_vdpa_handle_set_map': mr.c:(.text+0xf1d): undefined reference to `vhost_iotlb_itree_first' Signed-off-by: Randy Dunlap <rdunlap at infradead.org> Cc: "Michael S. Tsirkin" <mst at redhat.com> Cc: Jason Wang <jasowang at redhat.com> Cc: virtualization at lists.linux-foundation.org Cc...
2020 Sep 18
0
[PATCH v3 -next] vdpa: mlx5: change Kconfig depends to fix build errors
...to `vhost_iotlb_itree_next' ld: drivers/vdpa/mlx5/core/mr.o: in function `_mlx5_vdpa_create_mr': mr.c:(.text+0x908): undefined reference to `vhost_iotlb_itree_first' ld: mr.c:(.text+0x9e6): undefined reference to `vhost_iotlb_itree_next' ld: drivers/vdpa/mlx5/core/mr.o: in function `mlx5_vdpa_handle_set_map': mr.c:(.text+0xf1d): undefined reference to `vhost_iotlb_itree_first' Signed-off-by: Randy Dunlap <rdunlap at infradead.org> Cc: "Michael S. Tsirkin" <mst at redhat.com> Cc: Jason Wang <jasowang at redhat.com> Cc: virtualization at lists.linux-foundation.org Cc...
2020 Sep 24
0
[PATCH v3 -next] vdpa: mlx5: change Kconfig depends to fix build errors
...; ld: drivers/vdpa/mlx5/core/mr.o: in function `_mlx5_vdpa_create_mr': > > mr.c:(.text+0x908): undefined reference to `vhost_iotlb_itree_first' > > ld: mr.c:(.text+0x9e6): undefined reference to `vhost_iotlb_itree_next' > > ld: drivers/vdpa/mlx5/core/mr.o: in function `mlx5_vdpa_handle_set_map': > > mr.c:(.text+0xf1d): undefined reference to `vhost_iotlb_itree_first' > > > > Signed-off-by: Randy Dunlap <rdunlap at infradead.org> > > Cc: "Michael S. Tsirkin" <mst at redhat.com> > > Cc: Jason Wang <jasowang at redhat.com> &g...
2020 Jul 17
0
[PATCH vhost next 10/10] vdpa/mlx5: Add VDPA driver for supported mlx5 devices
...set_map(struct vdpa_device *vdev, struct vhost_iotlb *iotlb) >>> +{ >>> + struct mlx5_vdpa_dev *mvdev = to_mvdev(vdev); >>> + struct mlx5_vdpa_net *ndev = to_mlx5_vdpa_ndev(mvdev); >>> + bool change_map; >>> + int err; >>> + >>> + err = mlx5_vdpa_handle_set_map(mvdev, iotlb, &change_map); >>> + if (err) { >>> + mlx5_vdpa_warn(mvdev, "set map failed(%d)\n", err); >>> + return err; >>> + } >>> + >>> + if (change_map) >>> + return mlx5_vdpa_change_map(ndev, iotlb); >> >&...
2023 Sep 09
0
[PATCH RFC v2 2/4] vdpa/mlx5: implement .reset_map driver op
...r_mr) + goto out; + _mlx5_vdpa_destroy_dvq_mr(mvdev); + if (MLX5_CAP_GEN(mvdev->mdev, umem_uid_0)) { + err = _mlx5_vdpa_create_dvq_mr(mvdev, NULL); + if (err) + mlx5_vdpa_warn(mvdev, "create DMA MR failed\n"); + } +out: + mutex_unlock(&mr->mkey_mtx); + return err; +} + int mlx5_vdpa_handle_set_map(struct mlx5_vdpa_dev *mvdev, struct vhost_iotlb *iotlb, bool *change_map, unsigned int asid) { diff --git a/drivers/vdpa/mlx5/net/mlx5_vnet.c b/drivers/vdpa/mlx5/net/mlx5_vnet.c index 37be945..3cb5db6 100644 --- a/drivers/vdpa/mlx5/net/mlx5_vnet.c +++ b/drivers/vdpa/mlx5/net/mlx5_vnet.c @...
2023 Aug 02
3
[PATCH 0/2] vdpa/mlx5: Fixes for ASID handling
This patch series is based on Eugenio's fix for handling CVQs in a different ASID [0]. The first patch is the actual fix. The next 2 patches are fixing a possible issue that I found while implementing patch 1. The patches are ordered like this for clarity. [0] https://lore.kernel.org/lkml/20230112142218.725622-1-eperezma at redhat.com/ Dragos Tatulea (1): vdpa/mlx5: Fix
2023 Aug 02
3
[PATCH 0/2] vdpa/mlx5: Fixes for ASID handling
This patch series is based on Eugenio's fix for handling CVQs in a different ASID [0]. The first patch is the actual fix. The next 2 patches are fixing a possible issue that I found while implementing patch 1. The patches are ordered like this for clarity. [0] https://lore.kernel.org/lkml/20230112142218.725622-1-eperezma at redhat.com/ Dragos Tatulea (1): vdpa/mlx5: Fix
2023 Sep 09
4
[PATCH RFC v2 0/4] vdpa: decouple reset of iotlb mapping from device reset
In order to reduce needlessly high setup and teardown cost of iotlb mapping during live migration, it's crucial to decouple the vhost-vdpa iotlb abstraction from the virtio device life cycle, i.e. iotlb mappings should be left intact across virtio device reset [1]. For it to work, the on-chip IOMMU parent device should implement a separate .reset_map() operation callback to restore 1:1 DMA
2023 Sep 09
4
[PATCH RFC v3 0/4] vdpa: decouple reset of iotlb mapping from device reset
In order to reduce needlessly high setup and teardown cost of iotlb mapping during live migration, it's crucial to decouple the vhost-vdpa iotlb abstraction from the virtio device life cycle, i.e. iotlb mappings should be left intact across virtio device reset [1]. For it to work, the on-chip IOMMU parent device should implement a separate .reset_map() operation callback to restore 1:1 DMA
2020 Jul 16
0
[PATCH vhost next 10/10] vdpa/mlx5: Add VDPA driver for supported mlx5 devices
...MLX5_VDPA_NET) += net/main.o net/mlx5_vnet.o core/resources.o core/mr.o > diff --git a/drivers/vdpa/mlx5/core/mr.c b/drivers/vdpa/mlx5/core/mr.c > index 975aa45fd78b..34e3bbb80df8 100644 > --- a/drivers/vdpa/mlx5/core/mr.c > +++ b/drivers/vdpa/mlx5/core/mr.c > @@ -453,7 +453,7 @@ int mlx5_vdpa_handle_set_map(struct mlx5_vdpa_dev *mvdev, struct vhost_iotlb *io > bool *change_map) > { > struct mlx5_vdpa_mr *mr = &mvdev->mr; > - int err; > + int err = 0; > > *change_map = false; > if (map_empty(iotlb)) { > diff --git a/drivers/vdpa/mlx5/net/main.c...