[PATCH v2 2/2] selftests/powerpc: Add scv versions of the basic TM syscall tests
Nicholas Piggin
npiggin at gmail.com
Thu Sep 2 13:27:10 AEST 2021
Excerpts from Christophe Leroy's message of September 2, 2021 3:15 am:
>
>
> Le 01/09/2021 à 18:54, Nicholas Piggin a écrit :
>> The basic TM vs syscall test code hard codes an sc instruction for the
>> system call, which fails to cover scv even when the userspace libc has
>> support for it.
>>
>> Duplicate the tests with hard coded scv variants so both are tested
>> when possible.
>>
>> Signed-off-by: Nicholas Piggin <npiggin at gmail.com>
>> ---
>> .../selftests/powerpc/tm/tm-syscall-asm.S | 46 +++++++++++++++++++
>> .../testing/selftests/powerpc/tm/tm-syscall.c | 36 ++++++++++++---
>> 2 files changed, 75 insertions(+), 7 deletions(-)
>>
>> diff --git a/tools/testing/selftests/powerpc/tm/tm-syscall-asm.S b/tools/testing/selftests/powerpc/tm/tm-syscall-asm.S
>> index bd1ca25febe4..849316831e6a 100644
>> --- a/tools/testing/selftests/powerpc/tm/tm-syscall-asm.S
>> +++ b/tools/testing/selftests/powerpc/tm/tm-syscall-asm.S
>> @@ -2,6 +2,10 @@
>> #include <ppc-asm.h>
>> #include <asm/unistd.h>
>>
>> +/* ppc-asm.h does not define r0 or r1 */
>> +#define r0 0
>> +#define r1 1
>> +
>
> See https://github.com/gcc-mirror/gcc/blob/master/gcc/config/rs6000/ppc-asm.h
>
> It doesn't not define r1 but it defines r0.
Oops, I'll fix that.
> And it defines 'sp' as register 1.
Does userspace code typically use that? Kernel code AFAIKS does not.
Thanks,
Nick
More information about the Linuxppc-dev
mailing list