aboutsummaryrefslogtreecommitdiff
path: root/net/switchdev/switchdev.c
diff options
context:
space:
mode:
authorSong Liu <song@kernel.org>2022-02-04 10:57:40 -0800
committerAlexei Starovoitov <ast@kernel.org>2022-02-07 18:13:01 -0800
commit57631054fae6dcc9c892ae6310b58bbb6f6e5048 (patch)
treecbc2dd82f7767f68f07b404e2eb354a9002f1280 /net/switchdev/switchdev.c
parentebc1415d9b4f043cef5a1fb002ec316e32167e7a (diff)
downloadlinux-57631054fae6dcc9c892ae6310b58bbb6f6e5048.tar.gz
linux-57631054fae6dcc9c892ae6310b58bbb6f6e5048.tar.bz2
linux-57631054fae6dcc9c892ae6310b58bbb6f6e5048.zip
bpf: Introduce bpf_prog_pack allocator
Most BPF programs are small, but they consume a page each. For systems with busy traffic and many BPF programs, this could add significant pressure to instruction TLB. High iTLB pressure usually causes slow down for the whole system, which includes visible performance degradation for production workloads. Introduce bpf_prog_pack allocator to pack multiple BPF programs in a huge page. The memory is then allocated in 64 byte chunks. Memory allocated by bpf_prog_pack allocator is RO protected after initial allocation. To write to it, the user (jit engine) need to use text poke API. Signed-off-by: Song Liu <song@kernel.org> Signed-off-by: Alexei Starovoitov <ast@kernel.org> Link: https://lore.kernel.org/bpf/20220204185742.271030-8-song@kernel.org
Diffstat (limited to 'net/switchdev/switchdev.c')
0 files changed, 0 insertions, 0 deletions