On Mon, Sep 02, 2024 at 12:39:17PM +0000, LEROY Christophe wrote: > > > Le 02/09/2024 à 03:20, Jason A. Donenfeld a écrit : > > On Sun, Sep 01, 2024 at 08:43:10PM +0200, Christophe Leroy wrote: > >>>> How would this fit in the logic where IIUC you just remove '_64' from > >>>> 'x86_64' to get 'x86' > >>> > >>> Huh? That's not what tools/scripts/Makefile.arch does. > >> > >> Hum ... yes sorry I looked at it too quickly and mixed things up with > >> the other patch. > >> > >> Nevertheless, if I understand well what tools/scripts/Makefile.arch does > >> on an x86_64 for instance: > >> > >> uname -m returns x86_64 > >> HOSTARCH = x86 (sed -e s/x86_64/x86) > >> ARCH = x86 > >> SRCARCH = x86 > >> > >> If you build with make ARCH=x86_64, > >> SRCARCH = x86 > >> > >> So I still can't see how you can use that to know if it is a x86_64 or not. > > > > By the use of CONFIG_X86_32, which is also used elsewhere in that > > samme makefile for something else (so I assume it's wired up in the > > context where it counts, and if not, that's a bug that affects both > > spots and should be fixed).. > > I looks like it is a left-over from the time vDSO selftests were in > Documentation/vDSO and were likely built with kernel config. > > CONFIG_X86_32 was brought into tools/testing/selftests/vDSO by commit > f9b6b0ef6034 ("selftests: move vDSO tests from Documentation/vDSO") and > was meant to pass -lgcc_s when building vdso_standalone_test_x86 for > i386, but obviously it doesn't work: > > $ make ARCH=i386 V=1 > gcc -std=gnu99 -O2 -D_GNU_SOURCE= vdso_test_gettimeofday.c > parse_vdso.c -o > /home/chleroy/linux-powerpc/tools/testing/selftests/vDSO/vdso_test_gettimeofday > gcc -std=gnu99 -O2 -D_GNU_SOURCE= vdso_test_getcpu.c parse_vdso.c -o > /home/chleroy/linux-powerpc/tools/testing/selftests/vDSO/vdso_test_getcpu > gcc -std=gnu99 -O2 -D_GNU_SOURCE= vdso_test_abi.c parse_vdso.c -o > /home/chleroy/linux-powerpc/tools/testing/selftests/vDSO/vdso_test_abi > gcc -std=gnu99 -O2 -D_GNU_SOURCE= vdso_test_clock_getres.c -o > /home/chleroy/linux-powerpc/tools/testing/selftests/vDSO/vdso_test_clock_getres > gcc -std=gnu99 -O2 -D_GNU_SOURCE= -ldl vdso_test_correctness.c -o > /home/chleroy/linux-powerpc/tools/testing/selftests/vDSO/vdso_test_correctness > > In another place in selftests (tools/testing/selftests/ipc/), they > manually add it: > > ifeq ($(ARCH),i386) > ARCH := x86 > CFLAGS := -DCONFIG_X86_32 -D__i386__ > endif > ifeq ($(ARCH),x86_64) > ARCH := x86 > CFLAGS := -DCONFIG_X86_64 -D__x86_64__ > endif > > > So I think this is a confirmation that CONFIG_X86_32 doesn't exist in > selftests. Interesting... Seems like both sites, then, should be fixed somehow...