| From 3c62e24c8c6469e06613ef5be49a3ed85d7db944 Mon Sep 17 00:00:00 2001 |
| From: =?UTF-8?q?Toke=20H=C3=B8iland-J=C3=B8rgensen?= <toke@redhat.com> |
| Date: Mon, 16 Dec 2019 11:38:19 +0100 |
| Subject: [PATCH] samples/bpf: Set -fno-stack-protector when building BPF |
| programs |
| MIME-Version: 1.0 |
| Content-Type: text/plain; charset=UTF-8 |
| Content-Transfer-Encoding: 8bit |
| |
| commit 450278977acbf494a20367c22fbb38729772d1fc upstream. |
| |
| 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> |
| Signed-off-by: Alexei Starovoitov <ast@kernel.org> |
| Link: https://lore.kernel.org/bpf/20191216103819.359535-1-toke@redhat.com |
| Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com> |
| |
| diff --git a/samples/bpf/Makefile b/samples/bpf/Makefile |
| index 491ef40ade0a..84ff0a116fe6 100644 |
| --- a/samples/bpf/Makefile |
| +++ b/samples/bpf/Makefile |
| @@ -217,6 +217,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),) |
| EXTRA_CFLAGS += -g |
| else |
| -- |
| 2.7.4 |
| |