linux_dsm_epyc7002/drivers/net/ethernet
Quentin Monnet fb19816541 nfp: bpf: account for additional stack usage when checking stack limit
Offloaded programs using BPF-to-BPF calls use the stack to store the
return address when calling into a subprogram. Callees also need some
space to save eBPF registers R6 to R9. And contrarily to kernel
verifier, we align stack frames on 64 bytes (and not 32). Account for
all this when checking the stack size limit before JIT-ing the program.
This means we have to recompute maximum stack usage for the program, we
cannot get the value from the kernel.

In addition to adapting the checks on stack usage, move them to the
finalize() callback, now that we have it and because such checks are
part of the verification step rather than translation.

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
..
3com net: prevent ISA drivers from building on PPC32 2018-07-22 11:12:29 -07:00
8390 net: ethernet: Use phy_set_max_speed() to limit advertised speed 2018-09-12 20:24:20 -07:00
adaptec net: adaptec: Replace mdelay() with msleep() in starfire_init_one() 2018-07-26 21:24:23 -07:00
aeroflex net: ethernet: Use phy_set_max_speed() to limit advertised speed 2018-09-12 20:24:20 -07:00
agere net: ethernet: Use phy_set_max_speed() to limit advertised speed 2018-09-12 20:24:20 -07:00
alacritech net: ethernet: slicoss: remove duplicated include from slic.h 2018-09-18 19:57:40 -07:00
allwinner net: ethernet: Use phy_set_max_speed() to limit advertised speed 2018-09-12 20:24:20 -07:00
alteon alteon: acenic: mark expected switch fall-through 2018-08-07 17:54:19 -07:00
altera net: ethernet: Use phy_set_max_speed() to limit advertised speed 2018-09-12 20:24:20 -07:00
amazon net: ethernet: remove redundant include 2018-09-18 20:07:27 -07:00
amd net: amd: remove redundant continue 2018-09-21 09:00:17 -07:00
apm net: ethernet: Add helper to determine if pause configuration is supported 2018-09-12 20:24:21 -07:00
apple net: apple: fix return type of ndo_start_xmit function 2018-09-21 19:15:15 -07:00
aquantia net: aquantia: memory corruption on jumbo frames 2018-09-23 22:25:25 -07:00
arc
atheros atl1: remove set but not used variable 'advertising' 2018-09-19 23:10:07 -07:00
aurora net: ethernet: Add helper for set_pauseparam for Asym Pause 2018-09-12 20:24:21 -07:00
broadcom Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-09-25 10:35:29 -07:00
brocade bna: Remove unnecessary self assignment 2018-09-21 19:02:05 -07:00
cadence net: macb: Clean 64b dma addresses if they are not detected 2018-09-25 10:33:06 -07:00
calxeda
cavium net: liquidio: list usage cleanup 2018-09-26 10:12:10 -07:00
chelsio net: cxgb3_main: remove redundant null pointer check before kfree_skb 2018-09-21 09:04:37 -07:00
cirrus net: cirrus: fix return type of ndo_start_xmit function 2018-09-21 19:15:14 -07:00
cisco net: cisco: enic: Replace GFP_ATOMIC with GFP_KERNEL 2018-08-04 13:08:06 -07:00
cortina net: ethernet: Add helper for MACs which support asym pause 2018-09-12 20:24:21 -07:00
davicom
dec net: tulip: de4x5: mark expected switch fall-throughs 2018-08-07 17:54:19 -07:00
dlink
emulex be2net: Fix memory leak in be_cmd_get_profile_config() 2018-09-05 08:07:55 -07:00
ezchip
faraday net: faraday: fix return type of ndo_start_xmit function 2018-09-26 10:18:08 -07:00
freescale dpaa2-eth: Make Rx flow hash key configurable 2018-09-24 12:28:40 -07:00
fujitsu
hisilicon net: hns3: Remove redundant hclge_get_port_type() 2018-09-21 19:29:32 -07:00
hp net: hp100: fix always-true check for link up state 2018-09-17 07:55:19 -07:00
huawei net-next: hinic: fix a problem in free_tx_poll() 2018-08-08 09:46:08 -07:00
i825xx net: i825xx: fix return type of ndo_start_xmit function 2018-09-21 19:15:15 -07:00
ibm Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-09-25 10:35:29 -07:00
intel Merge branch '40GbE' of git://git.kernel.org/pub/scm/linux/kernel/git/jkirsher/next-queue 2018-09-25 20:25:00 -07:00
marvell net: mvneta: Add support for 2500Mbps SGMII 2018-09-26 20:27:09 -07:00
mediatek net: ethernet: Add helper for MACs which support asym pause 2018-09-12 20:24:21 -07:00
mellanox Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-09-25 10:35:29 -07:00
micrel net: micrel: fix return type of ndo_start_xmit function 2018-09-21 19:11:39 -07:00
microchip Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-09-18 09:33:27 -07:00
moxa
mscc Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-09-25 10:35:29 -07:00
myricom
natsemi
neterion net: neterion: vxge: Remove unnecessary parentheses 2018-09-21 19:00:09 -07:00
netronome nfp: bpf: account for additional stack usage when checking stack limit 2018-10-08 10:24:13 +02:00
ni net: nixge: Fix Kconfig warning with OF_MDIO 2018-09-02 16:10:15 -07:00
nuvoton
nvidia net: nvidia: forcedeth: Replace GFP_ATOMIC with GFP_KERNEL in nv_probe() 2018-07-27 13:45:14 -07:00
nxp net: ethernet: Use phy_set_max_speed() to limit advertised speed 2018-09-12 20:24:20 -07:00
oki-semi
packetengines
pasemi
qlogic net: qed: list usage cleanup 2018-09-26 10:11:36 -07:00
qualcomm net: qca_spi: Introduce write register verification 2018-09-24 12:26:06 -07:00
rdc net: ethernet: Use phy_set_max_speed() to limit advertised speed 2018-09-12 20:24:20 -07:00
realtek Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-09-25 10:35:29 -07:00
renesas Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-09-25 10:35:29 -07:00
rocker
samsung net: ethernet: Use phy_set_max_speed() to limit advertised speed 2018-09-12 20:24:20 -07:00
seeq net: seeq: fix return type of ndo_start_xmit function 2018-09-21 19:15:14 -07:00
sfc net: sfc: falcon: mark expected switch fall-through 2018-08-07 17:54:21 -07:00
sgi net: sgi: fix return type of ndo_start_xmit function 2018-09-21 19:15:14 -07:00
silan
sis
smsc net: smsc: fix return type of ndo_start_xmit function 2018-09-26 10:15:17 -07:00
socionext net: socionext: Fix two sleep-in-atomic-context bugs in ave_rxfifo_reset() 2018-09-17 19:02:44 -07:00
stmicro Merge ra.kernel.org:/pub/scm/linux/kernel/git/davem/net 2018-09-25 10:35:29 -07:00
sun net: sun: fix return type of ndo_start_xmit function 2018-09-19 21:17:58 -07:00
synopsys net: ethernet: Use existing define with polynomial 2018-07-27 19:16:37 +08:00
tehuti
ti net: ti: Use FIELD_SIZEOF directly instead of reimplementing its function 2018-09-19 20:58:05 -07:00
toshiba net: toshiba: remove a redundant local variable 'index_specified' 2018-09-19 23:08:36 -07:00
tundra
via
wiznet net: wiznet: fix return type of ndo_start_xmit function 2018-09-21 19:15:15 -07:00
xilinx net: xilinx: fix return type of ndo_start_xmit function 2018-09-19 21:17:58 -07:00
xircom
xscale
dnet.c net: ethernet: Add helper for MACs which support asym pause 2018-09-12 20:24:21 -07:00
dnet.h
ec_bhf.c
ethoc.c net: ethernet: Use phy_set_max_speed() to limit advertised speed 2018-09-12 20:24:20 -07:00
fealnx.c
jme.c net: jme: Replace mdelay() with msleep() and usleep_range() in jme_wait_link() 2018-07-27 13:45:14 -07:00
jme.h
Kconfig net: lantiq: Add Lantiq / Intel VRX200 Ethernet driver 2018-09-13 08:14:33 -07:00
korina.c
lantiq_etop.c MIPS: lantiq: Do not enable IRQs in dma open 2018-09-13 08:14:33 -07:00
lantiq_xrx200.c net: lantiq: lantiq_xrx200: Move clock prepare to probe function 2018-09-17 08:12:11 -07:00
Makefile net: lantiq: Add Lantiq / Intel VRX200 Ethernet driver 2018-09-13 08:14:33 -07:00
netx-eth.c