From 7b27d9ef0f63da736d3a585a5d5098cea62a3ad7 Mon Sep 17 00:00:00 2001
From: Heiko Carstens <hca@linux.ibm.com>
Date: Wed, 26 Jul 2023 08:18:34 +0200
Subject: [PATCH] s390/ftrace: use la instead of aghik in return_to_handler()

Nathan Chancellor reported the following build error when compiling the
kernel with CONFIG_MARCH_Z10=y:

  arch/s390/kernel/mcount.S: Assembler messages:
  arch/s390/kernel/mcount.S:140: Error: Unrecognized opcode: `aghik'

The aghik instruction is only available since z196. Use the la instruction
instead which is available for all machines.

Reported-by: Nathan Chancellor <nathan@kernel.org>
Closes: https://lore.kernel.org/all/20230725211105.GA224840@dev-arch.thelio-3990X
Fixes: 1256e70a082a ("s390/ftrace: enable HAVE_FUNCTION_GRAPH_RETVAL")
Reviewed-by: Sven Schnelle <svens@linux.ibm.com>
Tested-by: Nathan Chancellor <nathan@kernel.org> # build
Link: https://lore.kernel.org/r/20230726061834.1300984-1-hca@linux.ibm.com
Signed-off-by: Heiko Carstens <hca@linux.ibm.com>
---
 arch/s390/kernel/mcount.S | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/arch/s390/kernel/mcount.S b/arch/s390/kernel/mcount.S
index d2596e0df6fab..71c5fa05e7f17 100644
--- a/arch/s390/kernel/mcount.S
+++ b/arch/s390/kernel/mcount.S
@@ -137,7 +137,7 @@ SYM_FUNC_START(return_to_handler)
 	lgr	%r1,%r15
 	aghi	%r15,-(STACK_FRAME_OVERHEAD+__FGRAPH_RET_SIZE)
 	stg	%r1,__SF_BACKCHAIN(%r15)
-	aghik	%r3,%r15,STACK_FRAME_OVERHEAD
+	la	%r3,STACK_FRAME_OVERHEAD(%r15)
 	stg	%r1,__FGRAPH_RET_FP(%r3)
 	stg	%r2,__FGRAPH_RET_GPR2(%r3)
 	lgr	%r2,%r3
-- 
GitLab