Merge branch 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc
* 'next' of git://git.kernel.org/pub/scm/linux/kernel/git/benh/powerpc: (134 commits) powerpc/nvram: Enable use Generic NVRAM driver for different size chips powerpc/iseries: Fix oops reading from /proc/iSeries/mf/*/cmdline powerpc/ps3: Workaround for flash memory I/O error powerpc/booke: Don't set DABR on 64-bit BookE, use DAC1 instead powerpc/perf_counters: Reduce stack usage of power_check_constraints powerpc: Fix bug where perf_counters breaks oprofile powerpc/85xx: Fix SMP compile error and allow NULL for smp_ops powerpc/irq: Improve nanodoc powerpc: Fix some late PowerMac G5 with PCIe ATI graphics powerpc/fsl-booke: Use HW PTE format if CONFIG_PTE_64BIT powerpc/book3e: Add missing page sizes powerpc/pseries: Fix to handle slb resize across migration powerpc/powermac: Thermal control turns system off too eagerly powerpc/pci: Merge ppc32 and ppc64 versions of phb_scan() powerpc/405ex: support cuImage via included dtb powerpc/405ex: provide necessary fixup function to support cuImage powerpc/40x: Add support for the ESTeem 195E (PPC405EP) SBC powerpc/44x: Add Eiger AMCC (AppliedMicro) PPC460SX evaluation board support. powerpc/44x: Update Arches defconfig powerpc/44x: Update Arches dts ... Fix up conflicts in drivers/char/agp/uninorth-agp.c
This commit is contained in:
@@ -56,8 +56,8 @@
|
||||
.macro KVM_HANDLER ivor_nr
|
||||
_GLOBAL(kvmppc_handler_\ivor_nr)
|
||||
/* Get pointer to vcpu and record exit number. */
|
||||
mtspr SPRN_SPRG0, r4
|
||||
mfspr r4, SPRN_SPRG1
|
||||
mtspr SPRN_SPRG_WSCRATCH0, r4
|
||||
mfspr r4, SPRN_SPRG_RVCPU
|
||||
stw r5, VCPU_GPR(r5)(r4)
|
||||
stw r6, VCPU_GPR(r6)(r4)
|
||||
mfctr r5
|
||||
@@ -95,7 +95,7 @@ _GLOBAL(kvmppc_handler_len)
|
||||
|
||||
|
||||
/* Registers:
|
||||
* SPRG0: guest r4
|
||||
* SPRG_SCRATCH0: guest r4
|
||||
* r4: vcpu pointer
|
||||
* r5: KVM exit number
|
||||
*/
|
||||
@@ -181,7 +181,7 @@ _GLOBAL(kvmppc_resume_host)
|
||||
stw r3, VCPU_LR(r4)
|
||||
mfxer r3
|
||||
stw r3, VCPU_XER(r4)
|
||||
mfspr r3, SPRN_SPRG0
|
||||
mfspr r3, SPRN_SPRG_RSCRATCH0
|
||||
stw r3, VCPU_GPR(r4)(r4)
|
||||
mfspr r3, SPRN_SRR0
|
||||
stw r3, VCPU_PC(r4)
|
||||
@@ -374,7 +374,7 @@ lightweight_exit:
|
||||
mtspr SPRN_IVPR, r8
|
||||
|
||||
/* Save vcpu pointer for the exception handlers. */
|
||||
mtspr SPRN_SPRG1, r4
|
||||
mtspr SPRN_SPRG_WVCPU, r4
|
||||
|
||||
/* Can't switch the stack pointer until after IVPR is switched,
|
||||
* because host interrupt handlers would get confused. */
|
||||
@@ -384,13 +384,13 @@ lightweight_exit:
|
||||
/* Host interrupt handlers may have clobbered these guest-readable
|
||||
* SPRGs, so we need to reload them here with the guest's values. */
|
||||
lwz r3, VCPU_SPRG4(r4)
|
||||
mtspr SPRN_SPRG4, r3
|
||||
mtspr SPRN_SPRG4W, r3
|
||||
lwz r3, VCPU_SPRG5(r4)
|
||||
mtspr SPRN_SPRG5, r3
|
||||
mtspr SPRN_SPRG5W, r3
|
||||
lwz r3, VCPU_SPRG6(r4)
|
||||
mtspr SPRN_SPRG6, r3
|
||||
mtspr SPRN_SPRG6W, r3
|
||||
lwz r3, VCPU_SPRG7(r4)
|
||||
mtspr SPRN_SPRG7, r3
|
||||
mtspr SPRN_SPRG7W, r3
|
||||
|
||||
#ifdef CONFIG_KVM_EXIT_TIMING
|
||||
/* save enter time */
|
||||
|
Reference in New Issue
Block a user