linux/tools
Yonghong Song ac4e0e055f tools/bpftool: move set_max_rlimit() before __bpf_object__open_xattr()
For a host which has a lower rlimit for max locked memory (e.g., 64KB),
the following error occurs in one of our production systems:
  # /usr/sbin/bpftool prog load /paragon/pods/52877437/home/mark.o \
    /sys/fs/bpf/paragon_mark_21 type cgroup/skb \
    map idx 0 pinned /sys/fs/bpf/paragon_map_21
  libbpf: Error in bpf_object__probe_name():Operation not permitted(1).
    Couldn't load basic 'r0 = 0' BPF program.
  Error: failed to open object file

The reason is due to low locked memory during bpf_object__probe_name()
which probes whether program name is supported in kernel or not
during __bpf_object__open_xattr().

bpftool program load already tries to relax mlock rlimit before
bpf_object__load(). Let us move set_max_rlimit() before
__bpf_object__open_xattr(), which fixed the issue here.

Fixes: 47eff61777 ("bpf, libbpf: introduce bpf_object__probe_caps to test BPF capabilities")
Signed-off-by: Yonghong Song <yhs@fb.com>
Signed-off-by: Alexei Starovoitov <ast@kernel.org>
2019-05-16 11:44:50 -07:00
..
accounting
arch arch/csky perf unwind libdw patch for v5.2-rc1 2019-05-09 13:28:26 -07:00
bpf tools/bpftool: move set_max_rlimit() before __bpf_object__open_xattr() 2019-05-16 11:44:50 -07:00
build tools build: Implement libzstd feature check, LIBZSTD_DIR and NO_LIBZSTD defines 2019-04-01 15:18:10 -03:00
cgroup
crypto
debugging
firewire
firmware
gpio
hv
iio
include tools/bpf: Sync kernel btf.h header 2019-05-14 10:06:23 +02:00
io_uring tools/io_uring: remove IOCQE_FLAG_CACHEHIT 2019-04-08 10:48:50 -06:00
kvm/kvm_stat
laptop
leds
lib libbpf: don't fail when feature probing fails 2019-05-16 01:32:19 +02:00
memory-model tools/memory-model: Add support for synchronize_srcu_expedited() 2019-04-04 13:48:34 -07:00
nfsd
objtool A reasonably busy cycle for docs, including: 2019-05-08 12:42:50 -07:00
pci tools: PCI: Handle pcitest.sh independently from pcitest 2019-04-11 10:25:38 +01:00
pcmcia
perf arch/csky perf unwind libdw patch for v5.2-rc1 2019-05-09 13:28:26 -07:00
power Merge branch 'x86-mds-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2019-05-14 07:57:29 -07:00
scripts
spi
testing selftests/bpf: add test_sysctl and map_tests/tests.h to .gitignore 2019-05-16 11:41:31 -07:00
thermal/tmon
time
usb
virtio tools/virtio/ringtest: Remove bogus definition of BUG_ON() 2019-05-12 13:11:35 -04:00
vm
wmi
Makefile