[<prev] [next>] [thread-next>] [day] [month] [year] [list]
Message-Id: <20180726025335.23017-1-jakub.kicinski@netronome.com>
Date: Wed, 25 Jul 2018 19:53:29 -0700
From: Jakub Kicinski <jakub.kicinski@...ronome.com>
To: alexei.starovoitov@...il.com, daniel@...earbox.net
Cc: oss-drivers@...ronome.com, netdev@...r.kernel.org,
Jakub Kicinski <jakub.kicinski@...ronome.com>
Subject: [PATCH bpf-next 0/6] nfp: bpf: improve efficiency of offloaded perf events
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
Powered by blists - more mailing lists