76daa3
From c6e422e04d86a18085677e03439f9f0c0f4548a0 Mon Sep 17 00:00:00 2001
76daa3
From: Laurent Vivier <lvivier@redhat.com>
76daa3
Date: Thu, 13 Jul 2017 16:36:28 +0200
76daa3
Subject: [PATCH 4/6] target/ppc: Fix return value in tcg radix mmu fault
76daa3
 handler
76daa3
76daa3
RH-Author: Laurent Vivier <lvivier@redhat.com>
76daa3
Message-id: <20170713163630.24848-3-lvivier@redhat.com>
76daa3
Patchwork-id: 75764
76daa3
O-Subject: [RHEL-ALT-7.4 qemu-kvm PATCH 2/4] target/ppc: Fix return value in tcg radix mmu fault handler
76daa3
Bugzilla: 1470558
76daa3
RH-Acked-by: David Gibson <dgibson@redhat.com>
76daa3
RH-Acked-by: Thomas Huth <thuth@redhat.com>
76daa3
RH-Acked-by: Suraj Jitindar Singh <sursingh@redhat.com>
76daa3
76daa3
From: Suraj Jitindar Singh <sjitindarsingh@gmail.com>
76daa3
76daa3
The mmu fault handler should return 0 if it was able to successfully
76daa3
handle the fault and a positive value otherwise.
76daa3
76daa3
Currently the tcg radix mmu fault handler will return 1 after
76daa3
successfully handling a fault in virtual mode. This is incorrect
76daa3
so fix it so that it returns 0 in this case.
76daa3
76daa3
The handler already correctly returns 0 when a fault was handled
76daa3
in real mode and 1 if an interrupt was generated.
76daa3
76daa3
Fixes: d5fee0bbe68d ("target/ppc: Implement ISA V3.00 radix page fault handler")
76daa3
76daa3
Signed-off-by: Suraj Jitindar Singh <sjitindarsingh@gmail.com>
76daa3
Signed-off-by: David Gibson <david@gibson.dropbear.id.au>
76daa3
(cherry picked from commit 35068bd15eec80844699173b9e7d5ccb09a6bb87)
76daa3
Signed-off-by: Laurent Vivier <lvivier@redhat.com>
76daa3
76daa3
BZ:   https://bugzilla.redhat.com/show_bug.cgi?id=1470558
76daa3
BREW: https://brewweb.engineering.redhat.com/brew/taskinfo?taskID=13654102
76daa3
Signed-off-by: Miroslav Rezanina <mrezanin@redhat.com>
76daa3
---
76daa3
 target/ppc/mmu-radix64.c | 2 +-
76daa3
 1 file changed, 1 insertion(+), 1 deletion(-)
76daa3
76daa3
diff --git a/target/ppc/mmu-radix64.c b/target/ppc/mmu-radix64.c
76daa3
index de18c0b..69fde65 100644
76daa3
--- a/target/ppc/mmu-radix64.c
76daa3
+++ b/target/ppc/mmu-radix64.c
76daa3
@@ -255,5 +255,5 @@ int ppc_radix64_handle_mmu_fault(PowerPCCPU *cpu, vaddr eaddr, int rwx,
76daa3
 
76daa3
     tlb_set_page(cs, eaddr & TARGET_PAGE_MASK, raddr & TARGET_PAGE_MASK,
76daa3
                  prot, mmu_idx, 1UL << page_size);
76daa3
-    return 1;
76daa3
+    return 0;
76daa3
 }
76daa3
-- 
76daa3
1.8.3.1
76daa3