#
db12615b |
| 28-Dec-2020 |
Ophir Munk <ophirmu@nvidia.com> |
net/mlx5: prepare MR prototypes for DevX
Currently MR operations are Verbs based. This commit updates MR operations prototypes such that DevX MR operations callbacks can be used as well. Rename 'st
net/mlx5: prepare MR prototypes for DevX
Currently MR operations are Verbs based. This commit updates MR operations prototypes such that DevX MR operations callbacks can be used as well. Rename 'struct mlx5_verbs_ops' as 'struct mlx5_mr_ops' and move it to shared file mlx5.h.
Signed-off-by: Ophir Munk <ophirmu@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
81c3b977 |
| 24-Nov-2020 |
Viacheslav Ovsiienko <viacheslavo@nvidia.com> |
net/mlx5: fix Verbs memory allocation callback
The rdma-core library uses callbacks to allocate and free memory from DPDK. The memory allocation callback used the complicated and incorrect way to ge
net/mlx5: fix Verbs memory allocation callback
The rdma-core library uses callbacks to allocate and free memory from DPDK. The memory allocation callback used the complicated and incorrect way to get the NUMA socket ID from the context. The context was wrong that might result in wrong socket ID and allocating memory from wrong node.
The callbacks are assigned once as Infinibande device context is created allowing early access to shared DPDK memory for all Verbs internal objects need that.
Fixes: 36dabcea78f0 ("net/mlx5: use anonymous Direct Verbs allocator argument") Fixes: 2eb4d0107acc ("net/mlx5: refactor PCI probing on Linux") Fixes: 17e19bc4dde7 ("net/mlx5: add IB shared context alloc/free functions") Cc: stable@dpdk.org
Signed-off-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
876b5d52 |
| 03-Nov-2020 |
Matan Azrad <matan@nvidia.com> |
net/mlx5: fix Tx queue stop state
The Tx queue stop API doesn't call the PMD callback when the state of the queue is stopped. The drivers should update the state to be stopped when the queue stop ca
net/mlx5: fix Tx queue stop state
The Tx queue stop API doesn't call the PMD callback when the state of the queue is stopped. The drivers should update the state to be stopped when the queue stop callback is done successfully or when the port is stopped. The drivers should update the state to be started when the queue start callback is done successfully or when the port is started.
The driver wrongly didn't update the state as started when the port start callback was done which kept the state as stopped. Following call to a queue stop API was not completed by ethdev layer because the state is already stopped.
Move the state update from the Tx queue setup to the port start callback.
Fixes: 161d103b231c ("net/mlx5: add queue start and stop") Cc: stable@dpdk.org
Signed-off-by: Matan Azrad <matan@nvidia.com> Acked-by: Viacheslav Ovsiienko <viacheslavo@nvidia.com>
show more ...
|
#
e96242ef |
| 01-Oct-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: remove Rx queue object type field
Once the separation between Verbs and DevX is done using function pointers, the type field of the Rx queue object structure becomes redundant and no more
net/mlx5: remove Rx queue object type field
Once the separation between Verbs and DevX is done using function pointers, the type field of the Rx queue object structure becomes redundant and no more code is used. Remove the unnecessary field from the structure.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
4c6d80f1 |
| 01-Oct-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: separate Rx queue state modification
Separate Rx state modification to the Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.c
net/mlx5: separate Rx queue state modification
Separate Rx state modification to the Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
354cc08a |
| 01-Oct-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: remove Tx queue object type field
Once the separation between Verbs and DevX is done using function pointers, the type field of the Tx queue object structure becomes redundant and no more
net/mlx5: remove Tx queue object type field
Once the separation between Verbs and DevX is done using function pointers, the type field of the Tx queue object structure becomes redundant and no more code is used. Remove the unnecessary field from the structure.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
a9c79306 |
| 01-Oct-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: share Tx queue object modification
Use new modify_qp functions for Tx object creation in DevX and Verbs modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <
net/mlx5: share Tx queue object modification
Use new modify_qp functions for Tx object creation in DevX and Verbs modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
5d9f3c3f |
| 01-Oct-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: separate Tx queue object modification
Separate Tx object modification to the Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia
net/mlx5: separate Tx queue object modification
Separate Tx object modification to the Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
e8390b3d |
| 01-Oct-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: rearrange QP creation in Verbs module
1. Rename function to mention the internal resources. 2. Reduce the number of function arguments.
Signed-off-by: Michael Baum <michaelba@nvidia.com>
net/mlx5: rearrange QP creation in Verbs module
1. Rename function to mention the internal resources. 2. Reduce the number of function arguments.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
f49f4483 |
| 01-Oct-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: share Tx control code
Move Tx object similar resources allocations and debug logs from DevX and Verbs modules to a shared location.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acke
net/mlx5: share Tx control code
Move Tx object similar resources allocations and debug logs from DevX and Verbs modules to a shared location.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
86d259ce |
| 01-Oct-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: separate Tx queue object creations
As an arrangement to Windows OS support, the Verbs operations should be separated to another file. By this way, the build can easily cut the unsupported
net/mlx5: separate Tx queue object creations
As an arrangement to Windows OS support, the Verbs operations should be separated to another file. By this way, the build can easily cut the unsupported Verbs APIs from the compilation process.
Define operation structure and DevX module in addition to the existing Linux Verbs module. Separate Tx object creation into the Verbs/DevX modules and update the operation structure according to the OS support and the user configuration.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
0c762e81 |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: share Rx queue drop action code
Move Rx queue drop action similar resources allocations from Verbs module to a shared location.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by
net/mlx5: share Rx queue drop action code
Move Rx queue drop action similar resources allocations from Verbs module to a shared location.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
5eaf882e |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: separate Rx queue drop
Separate Rx queue drop creation into both Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
|
#
5a959cbf |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: share Rx hash queue code
Move Rx hash queue object similar resources allocations from DevX and Verbs modules to a shared location.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked
net/mlx5: share Rx hash queue code
Move Rx hash queue object similar resources allocations from DevX and Verbs modules to a shared location.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
25ae7f1a |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: share Rx queue indirection table code
Move Rx indirection table object similar resources allocations from DevX and Verbs modules to a shared location.
Signed-off-by: Michael Baum <michael
net/mlx5: share Rx queue indirection table code
Move Rx indirection table object similar resources allocations from DevX and Verbs modules to a shared location.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
66b96fa6 |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: remove indirection table type field
Once the separation between Verbs and DevX is done using function pointers, the type field of the indirection table structure becomes redundant and no m
net/mlx5: remove indirection table type field
Once the separation between Verbs and DevX is done using function pointers, the type field of the indirection table structure becomes redundant and no more code is used. Remove the unnecessary field from the structure.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
85552726 |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: separate Rx hash queue creation
Separate Rx hash queue creation into both Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.co
net/mlx5: separate Rx hash queue creation
Separate Rx hash queue creation into both Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
87e2db37 |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: separate Rx indirection table object creation
Separate Rx indirection table object creation into both Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by:
net/mlx5: separate Rx indirection table object creation
Separate Rx indirection table object creation into both Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
fa2c85cc |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: share Rx queue object modification
Use new modify_wq functions for Rx object creation in DevX and Verbs modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <
net/mlx5: share Rx queue object modification
Use new modify_wq functions for Rx object creation in DevX and Verbs modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
c279f187 |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: separate Rx queue object modification
Separate Rx object modification to the Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia
net/mlx5: separate Rx queue object modification
Separate Rx object modification to the Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
675911d0 |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: rearrange creation of WQ and CQ object
Rearrangement of WQ and CQ creation for Verbs Rx queue: 1. Rename the allocation function. 2. Reduce the number of arguments that the creation functi
net/mlx5: rearrange creation of WQ and CQ object
Rearrangement of WQ and CQ creation for Verbs Rx queue: 1. Rename the allocation function. 2. Reduce the number of arguments that the creation functions receive.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
1260a87b |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: share Rx control code
Move Rx object similar resources allocations and debug logs from DevX and Verbs modules to a shared location.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acke
net/mlx5: share Rx control code
Move Rx object similar resources allocations and debug logs from DevX and Verbs modules to a shared location.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
32287079 |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: separate Rx interrupt handling
Separate interrupt event handler into both Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.co
net/mlx5: separate Rx interrupt handling
Separate interrupt event handler into both Verbs and DevX modules.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
6deb19e1 |
| 03-Sep-2020 |
Michael Baum <michaelba@nvidia.com> |
net/mlx5: separate Rx queue object creations
As an arrangement to Windows OS support, the Verbs operations should be separated to another file. By this way, the build can easily cut the unsupported
net/mlx5: separate Rx queue object creations
As an arrangement to Windows OS support, the Verbs operations should be separated to another file. By this way, the build can easily cut the unsupported Verbs APIs from the compilation process.
Define operation structure and DevX module in addition to the existing linux Verbs module. Separate Rx object creation into the Verbs/DevX modules and update the operation structure according to the OS support and the user configuration.
Signed-off-by: Michael Baum <michaelba@nvidia.com> Acked-by: Matan Azrad <matan@nvidia.com>
show more ...
|
#
8bb2410e |
| 25-Aug-2020 |
Ophir Munk <ophirmu@mellanox.com> |
net/mlx5: separate VLAN strip modification
When updating a queue vlan stripping offload - either the WQ is modified in Verbs or the RQ is modified in DevX. Add a vlan stripping modify callback to '
net/mlx5: separate VLAN strip modification
When updating a queue vlan stripping offload - either the WQ is modified in Verbs or the RQ is modified in DevX. Add a vlan stripping modify callback to 'struct mlx5_obj_ops' and assign it with the specific Verbs and DevX implementations: 'rxq_obj_modify_wq_vlan_strip' and 'rxq_obj_modify_rq_vlan_strip' respectively.
Signed-off-by: Ophir Munk <ophirmu@mellanox.com> Acked-by: Matan Azrad <matan@mellanox.com>
show more ...
|