Message ID | 20191216103819.359535-1-toke@redhat.com |
---|---|
State | Accepted |
Delegated to: | BPF Maintainers |
Headers | show |
Series | [bpf-next] samples/bpf: Set -fno-stack-protector when building BPF programs | expand |
On Mon, Dec 16, 2019 at 2:38 AM Toke Høiland-Jørgensen <toke@redhat.com> wrote: > > It seems Clang can in some cases turn on stack protection by default, which > doesn't work with BPF. This was reported once before[0], but it seems the > flag to explicitly turn off the stack protector wasn't added to the > Makefile, so do that now. > > The symptom of this is compile errors like the following: > > error: <unknown>:0:0: in function bpf_prog1 i32 (%struct.__sk_buff*): A call to built-in function '__stack_chk_fail' is not supported. > > [0] https://www.spinics.net/lists/netdev/msg556400.html > > Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com> Applied. Thanks
diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile index b00651608765..f51804ef12c3 100644 --- a/samples/bpf/Makefile +++ b/samples/bpf/Makefile @@ -234,6 +234,7 @@ BTF_LLVM_PROBE := $(shell echo "int main() { return 0; }" | \ readelf -S ./llvm_btf_verify.o | grep BTF; \ /bin/rm -f ./llvm_btf_verify.o) +BPF_EXTRA_CFLAGS += -fno-stack-protector ifneq ($(BTF_LLVM_PROBE),) BPF_EXTRA_CFLAGS += -g else
It seems Clang can in some cases turn on stack protection by default, which doesn't work with BPF. This was reported once before[0], but it seems the flag to explicitly turn off the stack protector wasn't added to the Makefile, so do that now. The symptom of this is compile errors like the following: error: <unknown>:0:0: in function bpf_prog1 i32 (%struct.__sk_buff*): A call to built-in function '__stack_chk_fail' is not supported. [0] https://www.spinics.net/lists/netdev/msg556400.html Signed-off-by: Toke Høiland-Jørgensen <toke@redhat.com> --- samples/bpf/Makefile | 1 + 1 file changed, 1 insertion(+)