Commit 3d4d1f05 authored by Martin Schwidefsky's avatar Martin Schwidefsky Committed by Shuah Khan
Browse files

rseq/selftests: s390: use trap4 for RSEQ_SIG



Use trap4 as the guard instruction for the restartable sequence abort
handler.

Signed-off-by: default avatarMartin Schwidefsky <schwidefsky@de.ibm.com>
Signed-off-by: default avatarMathieu Desnoyers <mathieu.desnoyers@efficios.com>
Signed-off-by: default avatarShuah Khan <skhan@linuxfoundation.org>
parent 24fa5d1e
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
/* SPDX-License-Identifier: LGPL-2.1 OR MIT */

#define RSEQ_SIG	0x53053053
/*
 * RSEQ_SIG uses the trap4 instruction. As Linux does not make use of the
 * access-register mode nor the linkage stack this instruction will always
 * cause a special-operation exception (the trap-enabled bit in the DUCT
 * is and will stay 0). The instruction pattern is
 *	b2 ff 0f ff	trap4   4095(%r0)
 */
#define RSEQ_SIG	0xB2FF0FFF

#define rseq_smp_mb()	__asm__ __volatile__ ("bcr 15,0" ::: "memory")
#define rseq_smp_rmb()	rseq_smp_mb()