You've already forked linux-rockchip
mirror of
https://github.com/armbian/linux-rockchip.git
synced 2026-01-06 11:08:10 -08:00
kselftest/arm64: Initialise current at build time in signal tests
commit 6e4b4f0eca88e47def703f90a403fef5b96730d5 upstream. When building with clang the toolchain refuses to link the signals testcases since the assembly code has a reference to current which has no initialiser so is placed in the BSS: /tmp/signals-af2042.o: in function `fake_sigreturn': <unknown>:51:(.text+0x40): relocation truncated to fit: R_AARCH64_LD_PREL_LO19 against symbol `current' defined in .bss section in /tmp/test_signals-ec1160.o Since the first statement in main() initialises current we may as well fix this by moving the initialisation to build time so the variable doesn't end up in the BSS. Signed-off-by: Mark Brown <broonie@kernel.org> Reviewed-by: Nick Desaulniers <ndesaulniers@google.com> Link: https://lore.kernel.org/r/20230111-arm64-kselftest-clang-v1-4-89c69d377727@kernel.org Signed-off-by: Catalin Marinas <catalin.marinas@arm.com> Signed-off-by: Mahmoud Adam <mngyadam@amazon.com> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
committed by
Greg Kroah-Hartman
parent
a60db84f77
commit
c8ec4e437a
@@ -12,12 +12,10 @@
|
||||
#include "test_signals.h"
|
||||
#include "test_signals_utils.h"
|
||||
|
||||
struct tdescr *current;
|
||||
struct tdescr *current = &tde;
|
||||
|
||||
int main(int argc, char *argv[])
|
||||
{
|
||||
current = &tde;
|
||||
|
||||
ksft_print_msg("%s :: %s\n", current->name, current->descr);
|
||||
if (test_setup(current) && test_init(current)) {
|
||||
test_run(current);
|
||||
|
||||
Reference in New Issue
Block a user