1
0
Fork 0
alistair23-linux/arch
Ilya Leoshkevich 2170f9d296 s390/bpf: Use kvcalloc for addrs array
[ Upstream commit 166f11d11f ]

A BPF program may consist of 1m instructions, which means JIT
instruction-address mapping can be as large as 4m. s390 has
FORCE_MAX_ZONEORDER=9 (for memory hotplug reasons), which means maximum
kmalloc size is 1m. This makes it impossible to JIT programs with more
than 256k instructions.

Fix by using kvcalloc, which falls back to vmalloc for larger
allocations. An alternative would be to use a radix tree, but that is
not supported by bpf_prog_fill_jited_linfo.

Signed-off-by: Ilya Leoshkevich <iii@linux.ibm.com>
Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Link: https://lore.kernel.org/bpf/20191107141838.92202-1-iii@linux.ibm.com
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-12-31 16:45:06 +01:00
..
alpha mm: introduce MADV_PAGEOUT 2019-09-25 17:51:41 -07:00
arc ARC: perf: Accommodate big-endian CPU 2019-10-22 09:59:43 -07:00
arm ARM: tegra: Fix FLOW_CTLR_HALT register clobbering by tegra_resume() 2019-12-21 11:04:48 +01:00
arm64 arm64: psci: Reduce the waiting time for cpu_psci_cpu_kill() 2019-12-31 16:44:21 +01:00
c6x mm: consolidate pgtable_cache_init() and pgd_cache_init() 2019-09-24 15:54:09 -07:00
csky csky-for-linus-5.4-rc1: arch/csky patches for 5.4-rc1 2019-09-30 10:16:17 -07:00
h8300 mm: consolidate pgtable_cache_init() and pgd_cache_init() 2019-09-24 15:54:09 -07:00
hexagon mm: treewide: clarify pgtable_page_{ctor,dtor}() naming 2019-09-26 10:10:44 -07:00
ia64 Merge branch 'akpm' (patches from Andrew) 2019-09-24 16:10:23 -07:00
m68k mm: treewide: clarify pgtable_page_{ctor,dtor}() naming 2019-09-26 10:10:44 -07:00
microblaze Merge branch 'akpm' (patches from Andrew) 2019-09-24 16:10:23 -07:00
mips MIPS: futex: Emit Loongson3 sync workarounds within asm 2019-12-31 16:43:48 +01:00
nds32 mm: consolidate pgtable_cache_init() and pgd_cache_init() 2019-09-24 15:54:09 -07:00
nios2 nios2 update for v5.4-rc1 2019-09-27 13:02:19 -07:00
openrisc mm: treewide: clarify pgtable_page_{ctor,dtor}() naming 2019-09-26 10:10:44 -07:00
parisc parisc: fix frame pointer in ftrace_regs_caller() 2019-10-30 21:24:40 +01:00
powerpc powerpc: Define arch_is_kernel_initmem_freed() for lockdep 2019-12-17 19:56:51 +01:00
riscv RISC-V: Add PCIe I/O BAR memory mapping 2019-10-28 10:43:32 -07:00
s390 s390/bpf: Use kvcalloc for addrs array 2019-12-31 16:45:06 +01:00
sh pinctrl: sh-pfc: sh7734: Fix duplicate TCLK1_B 2019-12-31 16:44:32 +01:00
sparc sparc64: implement ioremap_uc 2019-12-13 08:42:17 +01:00
um um-ubd: Entrust re-queue to the upper layers 2019-10-29 10:07:41 -06:00
unicore32 mm: treewide: clarify pgtable_page_{ctor,dtor}() naming 2019-09-26 10:10:44 -07:00
x86 x86/ioapic: Prevent inconsistent state when moving an interrupt 2019-12-31 16:44:15 +01:00
xtensa xtensa: fix syscall_set_return_value 2019-12-21 11:04:35 +01:00
.gitignore
Kconfig arm64, mm: make randomization selected by generic topdown mmap layout 2019-09-24 15:54:11 -07:00