| From e92cbd6c25fcf897c272b7edd8c752365afd377a Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Sat, 22 May 2021 17:41:53 -0700 |
| Subject: tools/testing/selftests/exec: fix link error |
| |
| From: Yang Yingliang <yangyingliang@huawei.com> |
| |
| [ Upstream commit 4d1cd3b2c5c1c32826454de3a18c6183238d47ed ] |
| |
| Fix the link error by adding '-static': |
| |
| gcc -Wall -Wl,-z,max-page-size=0x1000 -pie load_address.c -o /home/yang/linux/tools/testing/selftests/exec/load_address_4096 |
| /usr/bin/ld: /tmp/ccopEGun.o: relocation R_AARCH64_ADR_PREL_PG_HI21 against symbol `stderr@@GLIBC_2.17' which may bind externally can not be used when making a shared object; recompile with -fPIC |
| /usr/bin/ld: /tmp/ccopEGun.o(.text+0x158): unresolvable R_AARCH64_ADR_PREL_PG_HI21 relocation against symbol `stderr@@GLIBC_2.17' |
| /usr/bin/ld: final link failed: bad value |
| collect2: error: ld returned 1 exit status |
| make: *** [Makefile:25: tools/testing/selftests/exec/load_address_4096] Error 1 |
| |
| Link: https://lkml.kernel.org/r/20210514092422.2367367-1-yangyingliang@huawei.com |
| Fixes: 206e22f01941 ("tools/testing/selftests: add self-test for verifying load alignment") |
| Signed-off-by: Yang Yingliang <yangyingliang@huawei.com> |
| Cc: Chris Kennelly <ckennelly@google.com> |
| Signed-off-by: Andrew Morton <akpm@linux-foundation.org> |
| Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| tools/testing/selftests/exec/Makefile | 6 +++--- |
| 1 file changed, 3 insertions(+), 3 deletions(-) |
| |
| diff --git a/tools/testing/selftests/exec/Makefile b/tools/testing/selftests/exec/Makefile |
| index cf69b2fcce59..dd61118df66e 100644 |
| --- a/tools/testing/selftests/exec/Makefile |
| +++ b/tools/testing/selftests/exec/Makefile |
| @@ -28,8 +28,8 @@ $(OUTPUT)/execveat.denatured: $(OUTPUT)/execveat |
| cp $< $@ |
| chmod -x $@ |
| $(OUTPUT)/load_address_4096: load_address.c |
| - $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-z,max-page-size=0x1000 -pie $< -o $@ |
| + $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-z,max-page-size=0x1000 -pie -static $< -o $@ |
| $(OUTPUT)/load_address_2097152: load_address.c |
| - $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-z,max-page-size=0x200000 -pie $< -o $@ |
| + $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-z,max-page-size=0x200000 -pie -static $< -o $@ |
| $(OUTPUT)/load_address_16777216: load_address.c |
| - $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-z,max-page-size=0x1000000 -pie $< -o $@ |
| + $(CC) $(CFLAGS) $(LDFLAGS) -Wl,-z,max-page-size=0x1000000 -pie -static $< -o $@ |
| -- |
| 2.30.2 |
| |