diff options
author | Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com> | 2018-03-30 17:27:24 +0530 |
---|---|---|
committer | Michael Ellerman <mpe@ellerman.id.au> | 2018-04-01 00:47:13 +1100 |
commit | ca9a16c3bc1582da62ef9c47fc22008447f7ae0e (patch) | |
tree | e4c7a5bb5991802b294d3bf6f3cdbaa576ec5198 /arch | |
parent | f437c51748fa1dd423a878c870ad203843a51c8d (diff) |
powerpc/kvm: Fix guest boot failure on Power9 since DAWR changes
SLOF checks for 'sc 1' (hypercall) support by issuing a hcall with
H_SET_DABR. Since the recent commit e8ebedbf3131 ("KVM: PPC: Book3S
HV: Return error from h_set_dabr() on POWER9") changed H_SET_DABR to
return H_UNSUPPORTED on Power9, we see guest boot failures, the
symptom is the boot seems to just stop in SLOF, eg:
SLOF ***************************************************************
QEMU Starting
Build Date = Sep 24 2017 12:23:07
FW Version = buildd@ release 20170724
<no further output>
SLOF can cope if H_SET_DABR returns H_HARDWARE. So wwitch the return
value to H_HARDWARE instead of H_UNSUPPORTED so that we don't break
the guest boot.
That does mean we return a different error to PowerVM in this case,
but that's probably not a big concern.
Fixes: e8ebedbf3131 ("KVM: PPC: Book3S HV: Return error from h_set_dabr() on POWER9")
Signed-off-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com>
Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/powerpc/kvm/book3s_hv_rmhandlers.S | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/powerpc/kvm/book3s_hv_rmhandlers.S b/arch/powerpc/kvm/book3s_hv_rmhandlers.S index 95c616f2da22..4e66f578e3cd 100644 --- a/arch/powerpc/kvm/book3s_hv_rmhandlers.S +++ b/arch/powerpc/kvm/book3s_hv_rmhandlers.S @@ -2575,7 +2575,7 @@ END_FTR_SECTION_IFSET(CPU_FTR_ARCH_207S) 2: BEGIN_FTR_SECTION /* POWER9 with disabled DAWR */ - li r3, H_UNSUPPORTED + li r3, H_HARDWARE blr END_FTR_SECTION_IFCLR(CPU_FTR_DAWR) /* Emulate H_SET_DABR/X on P8 for the sake of compat mode guests */ |