Thread (11 messages) flat view 11 messages, 4 authors, 2021-09-03

Re: [PATCH v2 2/2] selftests/powerpc: Add scv versions of the basic TM syscall tests

From: Nicholas Piggin <npiggin@gmail.com>
Date: 2021-09-02 03:28:04

Excerpts from Christophe Leroy's message of September 2, 2021 3:15 am:

Le 01/09/2021 à 18:54, Nicholas Piggin a écrit :
quoted
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@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
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help