mirror of
https://mirrors.bfsu.edu.cn/git/linux.git
synced 2024-12-14 14:34:28 +08:00
PPC KVM fix -
Fix a bug causing occasional machine check exceptions on POWER8 hosts, introduced in 4.16-rc1. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1 iQEcBAABAgAGBQJatGo6AAoJEJ2a6ncsY3GfZb0H/AiOmWCEhLqLmvudlFaCxm2c UBwXb4+snwQxHUTECpSibjDH65zetyqoX9FdyVS+xlEER1qRWxdgt5WY8gyxLjHP oPVIM3lROeRrRpql3ioXWKHWzcNZq5OQb67m9lHiO5irO/l2Ct1QazQnFtVrJOM0 0AqwmpIdYK8D9W8rEOTt6P9uOicdojriiGe+ihbJElqYeksJkQYMgMaQNC4Zq3ri qURH32cWAJe3AtP8cVJvWcubC2Cd01lHRbPOxHVAJvqE3MXQBtr4SFkuPJ0eRF2l Lcn/S5qw/AMQ6hU3bHxTFUywHUwyGX6qvAJMOyP8Szvv99SUhFezku2l4wCJ/6w= =9BpD -----END PGP SIGNATURE----- Merge tag 'kvm-ppc-fixes-4.16-3' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc into kvm-master PPC KVM fix - Fix a bug causing occasional machine check exceptions on POWER8 hosts, introduced in 4.16-rc1.
This commit is contained in:
commit
e13c2ac512
@ -1557,6 +1557,24 @@ mc_cont:
|
|||||||
ptesync
|
ptesync
|
||||||
3: stw r5,VCPU_SLB_MAX(r9)
|
3: stw r5,VCPU_SLB_MAX(r9)
|
||||||
|
|
||||||
|
/* load host SLB entries */
|
||||||
|
BEGIN_MMU_FTR_SECTION
|
||||||
|
b 0f
|
||||||
|
END_MMU_FTR_SECTION_IFSET(MMU_FTR_TYPE_RADIX)
|
||||||
|
ld r8,PACA_SLBSHADOWPTR(r13)
|
||||||
|
|
||||||
|
.rept SLB_NUM_BOLTED
|
||||||
|
li r3, SLBSHADOW_SAVEAREA
|
||||||
|
LDX_BE r5, r8, r3
|
||||||
|
addi r3, r3, 8
|
||||||
|
LDX_BE r6, r8, r3
|
||||||
|
andis. r7,r5,SLB_ESID_V@h
|
||||||
|
beq 1f
|
||||||
|
slbmte r6,r5
|
||||||
|
1: addi r8,r8,16
|
||||||
|
.endr
|
||||||
|
0:
|
||||||
|
|
||||||
guest_bypass:
|
guest_bypass:
|
||||||
stw r12, STACK_SLOT_TRAP(r1)
|
stw r12, STACK_SLOT_TRAP(r1)
|
||||||
mr r3, r12
|
mr r3, r12
|
||||||
@ -2018,23 +2036,6 @@ END_FTR_SECTION_IFSET(CPU_FTR_ARCH_300)
|
|||||||
mtspr SPRN_LPCR,r8
|
mtspr SPRN_LPCR,r8
|
||||||
isync
|
isync
|
||||||
48:
|
48:
|
||||||
/* load host SLB entries */
|
|
||||||
BEGIN_MMU_FTR_SECTION
|
|
||||||
b 0f
|
|
||||||
END_MMU_FTR_SECTION_IFSET(MMU_FTR_TYPE_RADIX)
|
|
||||||
ld r8,PACA_SLBSHADOWPTR(r13)
|
|
||||||
|
|
||||||
.rept SLB_NUM_BOLTED
|
|
||||||
li r3, SLBSHADOW_SAVEAREA
|
|
||||||
LDX_BE r5, r8, r3
|
|
||||||
addi r3, r3, 8
|
|
||||||
LDX_BE r6, r8, r3
|
|
||||||
andis. r7,r5,SLB_ESID_V@h
|
|
||||||
beq 1f
|
|
||||||
slbmte r6,r5
|
|
||||||
1: addi r8,r8,16
|
|
||||||
.endr
|
|
||||||
0:
|
|
||||||
#ifdef CONFIG_KVM_BOOK3S_HV_EXIT_TIMING
|
#ifdef CONFIG_KVM_BOOK3S_HV_EXIT_TIMING
|
||||||
/* Finish timing, if we have a vcpu */
|
/* Finish timing, if we have a vcpu */
|
||||||
ld r4, HSTATE_KVM_VCPU(r13)
|
ld r4, HSTATE_KVM_VCPU(r13)
|
||||||
|
Loading…
Reference in New Issue
Block a user