|
Michal Suchanek |
7671d9 |
From 22b89ba178dd0a66a26699ead014a3e73ff8e044 Mon Sep 17 00:00:00 2001
|
|
Michal Suchanek |
7671d9 |
From: Sandipan Das <sandipan@linux.ibm.com>
|
|
Michal Suchanek |
7671d9 |
Date: Thu, 4 Feb 2021 13:37:44 +0530
|
|
Michal Suchanek |
7671d9 |
Subject: [PATCH] powerpc/sstep: Fix darn emulation
|
|
Michal Suchanek |
7671d9 |
|
|
Michal Suchanek |
7671d9 |
References: bsc#1156395
|
|
Michal Suchanek |
7671d9 |
Patch-mainline: v5.12-rc1
|
|
Michal Suchanek |
7671d9 |
Git-commit: 22b89ba178dd0a66a26699ead014a3e73ff8e044
|
|
Michal Suchanek |
7671d9 |
|
|
Michal Suchanek |
7671d9 |
Commit 8813ff49607e ("powerpc/sstep: Check instruction validity
|
|
Michal Suchanek |
7671d9 |
against ISA version before emulation") introduced a proper way to skip
|
|
Michal Suchanek |
7671d9 |
unknown instructions. This makes sure that the same is used for the
|
|
Michal Suchanek |
7671d9 |
darn instruction when the range selection bits have a reserved value.
|
|
Michal Suchanek |
7671d9 |
|
|
Michal Suchanek |
7671d9 |
Fixes: a23987ef267a ("powerpc: sstep: Add support for darn instruction")
|
|
Michal Suchanek |
7671d9 |
Signed-off-by: Sandipan Das <sandipan@linux.ibm.com>
|
|
Michal Suchanek |
7671d9 |
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
|
|
Michal Suchanek |
7671d9 |
Link: https://lore.kernel.org/r/20210204080744.135785-2-sandipan@linux.ibm.com
|
|
Michal Suchanek |
7671d9 |
Acked-by: Michal Suchanek <msuchanek@suse.de>
|
|
Michal Suchanek |
7671d9 |
---
|
|
Michal Suchanek |
7671d9 |
arch/powerpc/lib/sstep.c | 2 +-
|
|
Michal Suchanek |
7671d9 |
1 file changed, 1 insertion(+), 1 deletion(-)
|
|
Michal Suchanek |
7671d9 |
|
|
Michal Suchanek |
7671d9 |
diff --git a/arch/powerpc/lib/sstep.c b/arch/powerpc/lib/sstep.c
|
|
Michal Suchanek |
7671d9 |
index 11f14b209d7f..683f7c20f74b 100644
|
|
Michal Suchanek |
7671d9 |
--- a/arch/powerpc/lib/sstep.c
|
|
Michal Suchanek |
7671d9 |
+++ b/arch/powerpc/lib/sstep.c
|
|
Michal Suchanek |
7671d9 |
@@ -1916,7 +1916,7 @@ int analyse_instr(struct instruction_op *op, const struct pt_regs *regs,
|
|
Michal Suchanek |
7671d9 |
goto compute_done;
|
|
Michal Suchanek |
7671d9 |
}
|
|
Michal Suchanek |
7671d9 |
|
|
Michal Suchanek |
7671d9 |
- return -1;
|
|
Michal Suchanek |
7671d9 |
+ goto unknown_opcode;
|
|
Michal Suchanek |
7671d9 |
#ifdef __powerpc64__
|
|
Michal Suchanek |
7671d9 |
case 777: /* modsd */
|
|
Michal Suchanek |
7671d9 |
if (!cpu_has_feature(CPU_FTR_ARCH_300))
|
|
Michal Suchanek |
7671d9 |
--
|
|
Michal Suchanek |
7671d9 |
2.26.2
|
|
Michal Suchanek |
7671d9 |
|