[PATCH 5/9] target/hppa: Strip upper 32-bits of IOR on error in probe

deller@kernel.org posted 9 patches 10 months, 3 weeks ago
Maintainers: Richard Henderson <richard.henderson@linaro.org>, Helge Deller <deller@gmx.de>
There is a newer version of this series
[PATCH 5/9] target/hppa: Strip upper 32-bits of IOR on error in probe
Posted by deller@kernel.org 10 months, 3 weeks ago
From: Helge Deller <deller@gmx.de>

Limit IOR to the lower 32-bits on failure.
Keep patch short for easier backporting.

Signed-off-by: Helge Deller <deller@gmx.de>
---
 target/hppa/op_helper.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/target/hppa/op_helper.c b/target/hppa/op_helper.c
index 7f607c3afd..56930a3a8c 100644
--- a/target/hppa/op_helper.c
+++ b/target/hppa/op_helper.c
@@ -353,7 +353,7 @@ target_ulong HELPER(probe)(CPUHPPAState *env, target_ulong addr,
     if (excp >= 0) {
         if (env->psw & PSW_Q) {
             /* ??? Needs tweaking for hppa64.  */
-            env->cr[CR_IOR] = addr;
+            env->cr[CR_IOR] = (uint32_t) addr;
             env->cr[CR_ISR] = addr >> 32;
         }
         if (excp == EXCP_DTLB_MISS) {
-- 
2.43.0
Re: [PATCH 5/9] target/hppa: Strip upper 32-bits of IOR on error in probe
Posted by BALATON Zoltan 10 months, 3 weeks ago
On Thu, 4 Jan 2024, deller@kernel.org wrote:
> From: Helge Deller <deller@gmx.de>
>
> Limit IOR to the lower 32-bits on failure.
> Keep patch short for easier backporting.
>
> Signed-off-by: Helge Deller <deller@gmx.de>
> ---
> target/hppa/op_helper.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/target/hppa/op_helper.c b/target/hppa/op_helper.c
> index 7f607c3afd..56930a3a8c 100644
> --- a/target/hppa/op_helper.c
> +++ b/target/hppa/op_helper.c
> @@ -353,7 +353,7 @@ target_ulong HELPER(probe)(CPUHPPAState *env, target_ulong addr,
>     if (excp >= 0) {
>         if (env->psw & PSW_Q) {
>             /* ??? Needs tweaking for hppa64.  */
> -            env->cr[CR_IOR] = addr;
> +            env->cr[CR_IOR] = (uint32_t) addr;

I think no space needed for casts but checkpatch does not seem to notice 
this.

Regards,
BALATON Zoltan

>             env->cr[CR_ISR] = addr >> 32;
>         }
>         if (excp == EXCP_DTLB_MISS) {
> -- 
> 2.43.0
>
>
>