Hi!

This set is focused on improving the performance of perf events
reported from BPF offload.  Perf events can now be received on
packet data queues, which significantly improves the performance
(from total of 0.5 Msps to 5Msps per core).  To get to this
performance we need a fast path for control messages which will
operate on raw buffers and recycle them immediately.

Patch 5 replaces the map pointers for perf maps with map IDs.
We look the pointers up in a hashtable, anyway, to validate they
are correct, so there is no performance difference.  Map IDs
have the advantage of being easier to understand for users in
case of errors (we no longer print raw pointers to the logs).

Last patch improves info messages about map offload.

Jakub Kicinski (6):
  nfp: move repr handling on RX path
  nfp: allow control message reception on data queues
  nfp: bpf: pass raw data buffer to nfp_bpf_event_output()
  nfp: bpf: allow receiving perf events on data queues
  nfp: bpf: remember maps by ID
  nfp: bpf: improve map offload info messages

 drivers/net/ethernet/netronome/nfp/bpf/cmsg.c | 25 +++++++-
 drivers/net/ethernet/netronome/nfp/bpf/jit.c  | 12 ++--
 drivers/net/ethernet/netronome/nfp/bpf/main.c |  5 +-
 drivers/net/ethernet/netronome/nfp/bpf/main.h |  9 ++-
 .../net/ethernet/netronome/nfp/bpf/offload.c  | 63 +++++++++++--------
 drivers/net/ethernet/netronome/nfp/nfp_app.c  |  2 +
 drivers/net/ethernet/netronome/nfp/nfp_app.h  | 17 +++++
 .../ethernet/netronome/nfp/nfp_net_common.c   | 40 +++++++-----
 .../net/ethernet/netronome/nfp/nfp_net_ctrl.h |  1 +
 9 files changed, 125 insertions(+), 49 deletions(-)

-- 
2.17.1

Reply via email to