selftests/rseq: Fix build with undefined __weak
commit d5ad9aae13dcced333c1a7816ff0a4fbbb052466 upstream.
Commit 3bcbc20942db ("selftests/rseq: Play nice with binaries statically
linked against glibc 2.35+") which is now in Linus' tree introduced uses
of __weak but did nothing to ensure that a definition is provided for it
resulting in build failures for the rseq tests:
rseq.c:41:1: error: unknown type name '__weak'
__weak ptrdiff_t __rseq_offset;
^
rseq.c:41:17: error: expected ';' after top level declarator
__weak ptrdiff_t __rseq_offset;
^
;
rseq.c:42:1: error: unknown type name '__weak'
__weak unsigned int __rseq_size;
^
rseq.c:43:1: error: unknown type name '__weak'
__weak unsigned int __rseq_flags;
Fix this by using the definition from tools/include compiler.h.
Fixes: 3bcbc20942db ("selftests/rseq: Play nice with binaries statically linked against glibc 2.35+")
Signed-off-by: Mark Brown <broonie@kernel.org>
Message-Id: <20230804-kselftest-rseq-build-v1-1-015830b66aa9@kernel.org>
Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
e12b1ebc75
commit
e146162dcf
2 changed files with 5 additions and 1 deletions
|
|
@ -4,8 +4,10 @@ ifneq ($(shell $(CC) --version 2>&1 | head -n 1 | grep clang),)
|
|||
CLANG_FLAGS += -no-integrated-as
|
||||
endif
|
||||
|
||||
top_srcdir = ../../../..
|
||||
|
||||
CFLAGS += -O2 -Wall -g -I./ $(KHDR_INCLUDES) -L$(OUTPUT) -Wl,-rpath=./ \
|
||||
$(CLANG_FLAGS)
|
||||
$(CLANG_FLAGS) -I$(top_srcdir)/tools/include
|
||||
LDLIBS += -lpthread -ldl
|
||||
|
||||
# Own dependencies because we only want to build against 1st prerequisite, but
|
||||
|
|
|
|||
|
|
@ -29,6 +29,8 @@
|
|||
#include <dlfcn.h>
|
||||
#include <stddef.h>
|
||||
|
||||
#include <linux/compiler.h>
|
||||
|
||||
#include "../kselftest.h"
|
||||
#include "rseq.h"
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue