numam-dpdk/drivers/net/mlx5
Yongseok Koh 9c55c6bd86 net/mlx5: revert mbuf address calculation for x86
When replenishing mbufs on Rx, buffer address (mbuf->buf_addr) should be
loaded. non-x86 processors (mostly RISC such as ARM and Power) are more
vulnerable to load stall. For x86, reducing the number of instructions
seems to matter most.

For x86, this is simply a load but for other architectures, it is
calculated from the address of mbuf structure by rte_mbuf_buf_addr()
without having to load the first cacheline of the mbuf.

Fixes: 12d468a62b ("net/mlx5: fix instruction hotspot on replenishing Rx buffer")
Cc: stable@dpdk.org

Signed-off-by: Yongseok Koh <yskoh@mellanox.com>
Acked-by: Shahaf Shuler <shahafs@mellanox.com>
2019-04-05 17:45:22 +02:00
..
Makefile net/mlx5: add representor recognition on Linux 5.x 2019-03-29 17:25:32 +01:00
meson.build net/mlx5: add representor recognition on Linux 5.x 2019-03-29 17:25:32 +01:00
mlx5_defs.h net/mlx5: make vectorized Tx threshold configurable 2018-11-05 15:01:25 +01:00
mlx5_devx_cmds.c net/mlx5: support flow counters using devx 2019-01-14 17:44:29 +01:00
mlx5_ethdev.c net/mlx5: update event handler for multiport IB devices 2019-03-29 17:25:32 +01:00
mlx5_flow_dv.c net/mlx5: add source vport match to the ingress rules 2019-03-29 17:25:32 +01:00
mlx5_flow_tcf.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_flow_verbs.c net/mlx5: provide IB port for the object being created 2019-03-29 17:25:32 +01:00
mlx5_flow.c net/mlx5: provide IB port for the object being created 2019-03-29 17:25:32 +01:00
mlx5_flow.h net/mlx5: validate TOS and TTL on E-Switch 2019-01-14 17:44:30 +01:00
mlx5_glue.c net/mlx5: add devx functions to glue 2019-01-14 17:44:29 +01:00
mlx5_glue.h net/mlx5: add devx functions to glue 2019-01-14 17:44:29 +01:00
mlx5_mac.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_mr.c net/mlx5: switch to the shared protection domain 2019-03-29 17:25:32 +01:00
mlx5_mr.h
mlx5_nl.c net/mlx5: add getting IB ports number for multiport IB 2019-03-29 17:25:32 +01:00
mlx5_prm.h net/mlx5: support flow counters using devx 2019-01-14 17:44:29 +01:00
mlx5_rss.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_rxmode.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_rxq.c net/mlx5: switch to the shared IB device context 2019-03-29 17:25:32 +01:00
mlx5_rxtx_vec_neon.h net/mlx5: fix Tx metadata for multi-segment packet 2019-02-13 12:55:38 +01:00
mlx5_rxtx_vec_sse.h net/mlx5: fix Tx metadata for multi-segment packet 2019-02-13 12:55:38 +01:00
mlx5_rxtx_vec.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5_rxtx_vec.h net/mlx5: revert mbuf address calculation for x86 2019-04-05 17:45:22 +02:00
mlx5_rxtx.c net/mlx5: fix packet inline on Tx queue wraparound 2019-03-20 18:15:42 +01:00
mlx5_rxtx.h net/mlx5: support PCI device DMA map and unmap 2019-03-30 16:48:58 +01:00
mlx5_socket.c net/mlx5: switch to the shared IB device context 2019-03-29 17:25:32 +01:00
mlx5_stats.c net/mlx5: switch to the names in the shared IB context 2019-03-29 17:25:32 +01:00
mlx5_trigger.c net/mlx5: switch to the shared IB device context 2019-03-29 17:25:32 +01:00
mlx5_txq.c net/mlx5: provide IB port for the object being created 2019-03-29 17:25:32 +01:00
mlx5_utils.h net/mlx5: fix build on PPC64 2018-11-14 00:35:53 +01:00
mlx5_vlan.c net/mlx: prefix private structure 2019-03-01 18:17:35 +01:00
mlx5.c net/mlx5: update install/uninstall event handlers 2019-03-29 17:25:32 +01:00
mlx5.h net/mlx5: update install/uninstall event handlers 2019-03-29 17:25:32 +01:00
rte_pmd_mlx5_version.map