aboutsummaryrefslogtreecommitdiffstats
path: root/net/xdp
diff options
context:
space:
mode:
authorJiri Benc <jbenc@redhat.com>2019-07-02 19:40:31 +0200
committerDaniel Borkmann <daniel@iogearbox.net>2019-07-03 15:07:41 +0200
commit11aca65ec4db09527d3e9b6b41a0615b7da4386b (patch)
tree35be8b23ecc5eaf7eef8b79b0b9a63c2ad6acb97 /net/xdp
parentselftests: bpf: add tests for shifts by zero (diff)
downloadlinux-dev-11aca65ec4db09527d3e9b6b41a0615b7da4386b.tar.xz
linux-dev-11aca65ec4db09527d3e9b6b41a0615b7da4386b.zip
selftests: bpf: fix inlines in test_lwt_seg6local
Selftests are reporting this failure in test_lwt_seg6local.sh: + ip netns exec ns2 ip -6 route add fb00::6 encap bpf in obj test_lwt_seg6local.o sec encap_srh dev veth2 Error fetching program/map! Failed to parse eBPF program: Operation not permitted The problem is __attribute__((always_inline)) alone is not enough to prevent clang from inserting those functions in .text. In that case, .text is not marked as relocateable. See the output of objdump -h test_lwt_seg6local.o: Idx Name Size VMA LMA File off Algn 0 .text 00003530 0000000000000000 0000000000000000 00000040 2**3 CONTENTS, ALLOC, LOAD, READONLY, CODE This causes the iproute bpf loader to fail in bpf_fetch_prog_sec: bpf_has_call_data returns true but bpf_fetch_prog_relo fails as there's no relocateable .text section in the file. To fix this, convert to 'static __always_inline'. v2: Use 'static __always_inline' instead of 'static inline __attribute__((always_inline))' Fixes: c99a84eac026 ("selftests/bpf: test for seg6local End.BPF action") Signed-off-by: Jiri Benc <jbenc@redhat.com> Acked-by: Yonghong Song <yhs@fb.com> Signed-off-by: Daniel Borkmann <daniel@iogearbox.net>
Diffstat (limited to 'net/xdp')
0 files changed, 0 insertions, 0 deletions