linux/tools/testing/selftests/rseq
Stafford Horne 713e788c0e
rseq/selftests: Fix riscv rseq_offset_deref_addv inline asm
When working on OpenRISC support for restartable sequences I noticed
and fixed these two issues with the riscv support bits.

 1 The 'inc' argument to RSEQ_ASM_OP_R_DEREF_ADDV was being implicitly
   passed to the macro.  Fix this by adding 'inc' to the list of macro
   arguments.
 2 The inline asm input constraints for 'inc' and 'off' use "er",  The
   riscv gcc port does not have an "e" constraint, this looks to be
   copied from the x86 port.  Fix this by just using an "r" constraint.

I have compile tested this only for riscv.  However, the same fixes I
use in the OpenRISC rseq selftests and everything passes with no issues.

Fixes: 171586a6ab ("selftests/rseq: riscv: Template memory ordering and percpu access mode")
Signed-off-by: Stafford Horne <shorne@gmail.com>
Tested-by: Charlie Jenkins <charlie@rivosinc.com>
Reviewed-by: Charlie Jenkins <charlie@rivosinc.com>
Reviewed-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
Acked-by: Shuah Khan <skhan@linuxfoundation.org>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250114170721.3613280-1-shorne@gmail.com
Signed-off-by: Palmer Dabbelt <palmer@rivosinc.com>
2025-02-14 13:06:36 -08:00
..
.gitignore selftests/rseq: Implement parametrized mm_cid test 2022-12-27 12:52:15 +01:00
Makefile linux-kselftest-next-6.6-rc1 2023-08-28 18:46:47 -07:00
basic_percpu_ops_test.c selftests/rseq: Do not skip !allowed_cpus for mm_cid 2024-01-22 11:40:36 -07:00
basic_test.c selftests/rseq: Implement rseq numa node id field selftest 2022-12-27 12:52:11 +01:00
compiler.h selftests/rseq: Implement rseq_unqual_scalar_typeof 2023-08-08 14:42:01 -06:00
param_test.c rseq/selftests: Add support for OpenRISC 2025-01-14 17:17:16 +00:00
rseq-abi.h selftests/rseq: Implement rseq mm_cid field support 2022-12-27 12:52:12 +01:00
rseq-arm-bits.h selftests/rseq: arm: Template memory ordering and percpu access mode 2022-12-27 12:52:13 +01:00
rseq-arm.h selftests/rseq: Use rseq_unqual_scalar_typeof in macros 2023-08-08 14:42:12 -06:00
rseq-arm64-bits.h selftests/rseq: arm64: Template memory ordering and percpu access mode 2022-12-27 12:52:13 +01:00
rseq-arm64.h selftests/rseq: Fix arm64 buggy load-acquire/store-release macros 2023-08-08 14:42:06 -06:00
rseq-bits-reset.h selftests/rseq: x86: Template memory ordering and percpu access mode 2022-12-27 12:52:12 +01:00
rseq-bits-template.h selftests/rseq: x86: Template memory ordering and percpu access mode 2022-12-27 12:52:12 +01:00
rseq-generic-thread-pointer.h selftests/rseq: Introduce thread pointer getters 2022-02-02 13:11:35 +01:00
rseq-mips-bits.h selftests/rseq: mips: Template memory ordering and percpu access mode 2022-12-27 12:52:13 +01:00
rseq-mips.h selftests/rseq: Use rseq_unqual_scalar_typeof in macros 2023-08-08 14:42:12 -06:00
rseq-or1k-bits.h rseq/selftests: Add support for OpenRISC 2025-01-14 17:17:16 +00:00
rseq-or1k-thread-pointer.h rseq/selftests: Add support for OpenRISC 2025-01-14 17:17:16 +00:00
rseq-or1k.h rseq/selftests: Add support for OpenRISC 2025-01-14 17:17:16 +00:00
rseq-ppc-bits.h selftests/rseq: ppc: Template memory ordering and percpu access mode 2022-12-27 12:52:14 +01:00
rseq-ppc-thread-pointer.h selftests/rseq: Introduce thread pointer getters 2022-02-02 13:11:35 +01:00
rseq-ppc.h selftests/rseq: Use rseq_unqual_scalar_typeof in macros 2023-08-08 14:42:12 -06:00
rseq-riscv-bits.h rseq/selftests: Fix riscv rseq_offset_deref_addv inline asm 2025-02-14 13:06:36 -08:00
rseq-riscv.h rseq/selftests: Fix riscv rseq_offset_deref_addv inline asm 2025-02-14 13:06:36 -08:00
rseq-s390-bits.h selftests/rseq: s390: Template memory ordering and percpu access mode 2022-12-27 12:52:14 +01:00
rseq-s390.h selftests/rseq: Use rseq_unqual_scalar_typeof in macros 2023-08-08 14:42:12 -06:00
rseq-thread-pointer.h rseq/selftests: Add support for OpenRISC 2025-01-14 17:17:16 +00:00
rseq-x86-bits.h selftests/rseq: x86: Template memory ordering and percpu access mode 2022-12-27 12:52:12 +01:00
rseq-x86-thread-pointer.h selftests/rseq: Introduce thread pointer getters 2022-02-02 13:11:35 +01:00
rseq-x86.h selftests/rseq: Use rseq_unqual_scalar_typeof in macros 2023-08-08 14:42:12 -06:00
rseq.c selftests/rseq: Fix handling of glibc without rseq support 2025-01-15 10:54:48 -07:00
rseq.h OpenRISC updates for 6.14 2025-01-25 10:16:56 -08:00
run_param_test.sh selftests/rseq: Revert "selftests/rseq: Add mm_numa_cid to test script" 2023-01-12 11:22:22 +01:00
settings rseq/selftests: Turn off timeout setting 2019-12-23 10:52:41 -07:00