[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <efca582d-20e9-4871-bcd8-5abcdb0c22f3@csgroup.eu>
Date: Sun, 1 Sep 2024 20:43:10 +0200
From: Christophe Leroy <christophe.leroy@...roup.eu>
To: "Jason A. Donenfeld" <Jason@...c4.com>
Cc: linux-kernel@...r.kernel.org, linux-kselftest@...r.kernel.org,
Adhemerval Zanella <adhemerval.zanella@...aro.org>,
Xi Ruoyao <xry111@...111.site>, broonie@...nel.org
Subject: Re: [PATCH] selftests: vDSO: Do not rely on $ARCH for
vdso_test_getrandom && vdso_test_chacha
Le 01/09/2024 à 20:02, Jason A. Donenfeld a écrit :
> On Sun, Sep 01, 2024 at 08:00:30PM +0200, Christophe Leroy wrote:
>> Hi Jason,
>>
>> Le 01/09/2024 à 15:22, Jason A. Donenfeld a écrit :
>>> Hi Christophe,
>>>
>>> Hmm, I'm not so sure I like this very much. I think it's important for
>>> these tests to fail when an arch tries to hook up the function to the
>>> vDSO, but it's still not exported for some reason. This also regresses
>>> the ARCH=x86_64 vs ARCH=x86 thing, which SRCARCH fixes.
>>>
>>> What about, instead, something like below, replacing the other commit?
>>
>> I need to look at it in more details and perfom a test, but after first
>> look I can't figure out how it would work.
>>
>> When I build selftests,
>>
>> to build 32 bits selftests I do:
>>
>> make ARCH=powerpc CROSS_COMPILE=ppc-linux-
>>
>> to build a 64 bits BE selftests I do:
>>
>> make ARCH=powerpc CROSS_COMPILE=powerpc64-linux-
>>
>> to build a 64 bits LE selftests I do:
>>
>> make ARCH=powerpc CROSS_COMPILE=powerpc64le-linux-
>>
>>
>> I addition, in case someone does the build on a native platform directly,
>>
>> On 32 bits, uname -m returns 'ppc'
>> On 64 bits, uname -m returns 'ppc64'
>> On 64 bits little endian, uname -m returns 'ppc64le'
>>
>> 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.
I don't see either what could be the result for powerpc.
By the way, in your patch I don't think you can use CONFIG_X86_32,
CONFIG symbols are not known when building selftests.
Christophe
Powered by blists - more mailing lists