[PATCH v5 0/3] Support PERF MGMT for RXE

zhenwei pi
2026-04-08T00:10:22Z

v5:
- remove patch "RDMA/core: Fix memory free for GID table", it was
applied by Jason separately.
- suggested by Yanjun, use 'skb_network_offset' to calculate the
length of received packets.

v4:
- drop rxe_ib_device_get_netdev and RXE_PORT, use 1 instead
- avoid UAF to get skb length
- remove one-line wrapper rxe_counter_get, use atomic64_read instead
- fix memory free for GID table, this is a new patch in this series.

v3:
- merge 'RDMA/rxe: use rxe_counter_get' into previous commit
- zero *out* MAD memory
- return success with error status rather than failure to avoid
uplayer hang

v2:
- Fix overflow for PMA counter *link_downed_counter*
- Use *rxe_counter_get* instead of *atomic64_read* for hw-counters

v1:
Support PERF MGMT for RXE, add sent/received bytes for RXE counters,
also improve coding style.

zhenwei pi (3):
RDMA/rxe: remove rxe_ib_device_get_netdev() and RXE_PORT
RDMA/rxe: add SENT/RCVD bytes
RDMA/rxe: support perf mgmt GET method

drivers/infiniband/sw/rxe/Makefile | 1 +
drivers/infiniband/sw/rxe/rxe_hw_counters.c | 2 +
drivers/infiniband/sw/rxe/rxe_hw_counters.h | 2 +
drivers/infiniband/sw/rxe/rxe_loc.h | 6 ++
drivers/infiniband/sw/rxe/rxe_mad.c | 101 ++++++++++++++++++++
drivers/infiniband/sw/rxe/rxe_mcast.c | 4 +-
drivers/infiniband/sw/rxe/rxe_net.c | 9 +-
drivers/infiniband/sw/rxe/rxe_recv.c | 2 +
drivers/infiniband/sw/rxe/rxe_verbs.c | 5 +-
drivers/infiniband/sw/rxe/rxe_verbs.h | 10 +-
10 files changed, 129 insertions(+), 13 deletions(-)
create mode 100644 drivers/infiniband/sw/rxe/rxe_mad.c

--
2.43.0