linux_dsm_epyc7002/drivers/net/ethernet/netronome/nfp
Quentin Monnet 2178f3f0dc nfp: bpf: fix return address from register-saving subroutine to callee
On performing a BPF-to-BPF call, we first jump to a subroutine that
pushes callee-saved registers (R6~R9) to the stack, and from there we
goes to the start of the callee next. In order to do so, the caller must
pass to the subroutine the address of the NFP instruction to jump to at
the end of that subroutine. This cannot be reliably implemented when
translated the caller, as we do not always know the start offset of the
callee yet.

This patch implement the required fixup step for passing the start
offset in the callee via the register used by the subroutine to hold its
return address.

Signed-off-by: Quentin Monnet <quentin.monnet@netronome.com>
Reviewed-by: Jakub Kicinski <jakub.kicinski@netronome.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
2018-10-08 10:24:13 +02:00
..
abm nfp: make RTsym users handle absolute symbols correctly 2018-08-28 16:01:47 -07:00
bpf nfp: bpf: fix return address from register-saving subroutine to callee 2018-10-08 10:24:13 +02:00
flower nfp: flower: reject tunnel encap with ipv6 outer headers for offloading 2018-09-12 13:18:30 -07:00
nfpcore nfp: validate rtsym accesses fall within the symbol 2018-09-05 22:17:07 -07:00
nic nfp: add Makefiles to all directories 2018-02-22 15:22:50 -05:00
Makefile nfp: flower: monitor and offload LAG groups 2018-05-24 23:10:57 -04:00
nfp_abi.h nfp: abm: enable advanced queuing on demand 2018-05-29 09:49:15 -04:00
nfp_app_nic.c nfp: abm: create project-specific vNIC structure 2018-05-23 14:26:18 -04:00
nfp_app.c nfp: allow control message reception on data queues 2018-07-27 07:14:35 +02:00
nfp_app.h nfp: allow apps to request larger MTU on control vNIC 2018-10-02 14:39:59 +02:00
nfp_asm.c nfp: bpf: add support for atomic add of unknown values 2018-03-28 19:36:14 -07:00
nfp_asm.h nfp: bpf: add main logics for BPF-to-BPF calls support in nfp driver 2018-10-08 10:24:13 +02:00
nfp_devlink.c devlink: Add extack to reload and port_{un, }split operations 2018-06-05 12:32:37 -04:00
nfp_hwmon.c nfp: add hwmon support 2017-05-30 11:27:06 -04:00
nfp_main.c nfp: make RTsym users handle absolute symbols correctly 2018-08-28 16:01:47 -07:00
nfp_main.h nfp: add shared buffer configuration 2018-05-23 14:26:18 -04:00
nfp_net_common.c nfp: allow apps to request larger MTU on control vNIC 2018-10-02 14:39:59 +02:00
nfp_net_ctrl.c nfp: fix TLV offset calculation 2018-02-02 19:08:20 -05:00
nfp_net_ctrl.h nfp: bpf: allow control message sizing for map ops 2018-10-02 14:39:59 +02:00
nfp_net_debugdump.c nfp: make RTsym users handle absolute symbols correctly 2018-08-28 16:01:47 -07:00
nfp_net_debugfs.c nfp: assign vNIC id as phys_port_name of vNICs which are not ports 2018-05-23 14:26:19 -04:00
nfp_net_ethtool.c nfp: populate bus-info on representors 2018-06-30 21:31:56 +09:00
nfp_net_main.c nfp: pass cpp_id to nfp_cpp_map_area() 2018-08-28 16:01:47 -07:00
nfp_net_repr.c nfp: add .ndo_init() and .ndo_uninit() callbacks 2018-07-18 15:10:34 +02:00
nfp_net_repr.h nfp: abm: expose all PF queues 2018-05-29 09:49:16 -04:00
nfp_net_sriov.c nfp: inform the VF driver needs to be restarted after changing the MAC 2017-10-28 18:59:48 +09:00
nfp_net_sriov.h nfp: add basic SR-IOV ndo functions 2017-08-25 19:24:58 -07:00
nfp_net.h nfp: protect from theoretical size overflows on HW descriptor ring 2018-07-25 22:17:44 -07:00
nfp_netvf_main.c nfp: assign vNIC id as phys_port_name of vNICs which are not ports 2018-05-23 14:26:19 -04:00
nfp_port.c nfp: use split in naming of PCIe PF ports 2018-05-23 14:26:19 -04:00
nfp_port.h nfp: allow apps to add extra stats to ports 2018-05-29 09:49:16 -04:00
nfp_shared_buf.c nfp: add shared buffer configuration 2018-05-23 14:26:18 -04:00