linux-stable/arch/arm
Christoffer Dall 957db105c9 arm/arm64: KVM: Introduce stage2_unmap_vm
Introduce a new function to unmap user RAM regions in the stage2 page
tables.  This is needed on reboot (or when the guest turns off the MMU)
to ensure we fault in pages again and make the dcache, RAM, and icache
coherent.

Using unmap_stage2_range for the whole guest physical range does not
work, because that unmaps IO regions (such as the GIC) which will not be
recreated or in the best case faulted in on a page-by-page basis.

Call this function on secondary and subsequent calls to the
KVM_ARM_VCPU_INIT ioctl so that a reset VCPU will detect the guest
Stage-1 MMU is off when faulting in pages and make the caches coherent.

Acked-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
2014-12-13 14:15:27 +01:00
..
boot The i.MX fixes for 3.18: 2014-10-25 20:44:05 -07:00
common This is the bulk of GPIO changes for the v3.18 development 2014-10-09 14:58:15 -04:00
configs ARM: SoC fixes for -rc2 2014-10-26 11:35:51 -07:00
crypto
firmware
include arm/arm64: KVM: Introduce stage2_unmap_vm 2014-12-13 14:15:27 +01:00
kernel Merge git://git.infradead.org/users/eparis/audit 2014-10-19 16:25:56 -07:00
kvm arm/arm64: KVM: Introduce stage2_unmap_vm 2014-12-13 14:15:27 +01:00
lib
mach-at91 Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2014-10-14 09:22:26 +02:00
mach-axxia
mach-bcm Merge tag 'bcm63138-v4' of http://github.com/brcm/linux into next/soc 2014-09-25 23:50:02 +02:00
mach-berlin
mach-clps711x ARM: SoC platform changes for 3.18 2014-10-08 17:13:04 -04:00
mach-cns3xxx CNS3xxx: Fix PCIe read size limit. 2014-09-25 23:35:01 +02:00
mach-davinci ARM: SoC DT updates for 3.18 2014-10-08 17:22:23 -04:00
mach-dove
mach-ebsa110 kbuild: remove unnecessary variable initializaions 2014-10-02 13:55:02 +02:00
mach-efm32
mach-ep93xx kbuild: remove unnecessary variable initializaions 2014-10-02 13:55:02 +02:00
mach-exynos Samsung fixes for v3.18 2014-10-14 23:31:13 -07:00
mach-footbridge kbuild: remove unnecessary variable initializaions 2014-10-02 13:55:02 +02:00
mach-gemini
mach-highbank mailbox: rename pl320-ipc specific mailbox.h 2014-10-08 10:39:33 +05:30
mach-hisi ARM: hisi: depend on ARCH_MULTI_V7 2014-10-02 16:40:10 +02:00
mach-imx ARM: i.MX6: Fix "emi" clock name typo 2014-10-25 20:01:09 +08:00
mach-integrator PCI changes for the v3.18 merge window: 2014-10-09 15:03:49 -04:00
mach-iop13xx kbuild: remove unnecessary variable initializaions 2014-10-02 13:55:02 +02:00
mach-iop32x kbuild: remove unnecessary variable initializaions 2014-10-02 13:55:02 +02:00
mach-iop33x kbuild: remove unnecessary variable initializaions 2014-10-02 13:55:02 +02:00
mach-ixp4xx
mach-keystone
mach-ks8695 kbuild: remove unnecessary variable initializaions 2014-10-02 13:55:02 +02:00
mach-lpc32xx
mach-mediatek
mach-meson ARM: meson: add basic support for MesonX SoCs 2014-09-25 17:34:42 +02:00
mach-mmp
mach-moxart
mach-msm
mach-mv78xx0
mach-mvebu cpufreq: cpu0: rename driver and internals to 'cpufreq_dt' 2014-10-03 15:37:54 +02:00
mach-mxs
mach-netx
mach-nomadik
mach-nspire
mach-omap1
mach-omap2 MTD updates for 3.18 2014-10-18 11:48:03 -07:00
mach-orion5x
mach-picoxcell
mach-prima2
mach-pxa The clk tree changes for 3.18 are dominated by clock drivers. Mostly 2014-10-15 07:05:03 +02:00
mach-qcom
mach-realview
mach-rockchip
mach-rpc kbuild: remove unnecessary variable initializaions 2014-10-02 13:55:02 +02:00
mach-s3c24xx Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2014-10-14 09:22:26 +02:00
mach-s3c64xx Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2014-10-14 09:22:26 +02:00
mach-s5pv210 Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2014-10-14 09:22:26 +02:00
mach-sa1100 Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2014-10-14 09:22:26 +02:00
mach-shmobile Merge branch 'drm-next' of git://people.freedesktop.org/~airlied/linux 2014-10-14 09:39:08 +02:00
mach-socfpga arm: socfpga: fix fetching cpu1start_addr for SMP 2014-10-21 14:04:14 -05:00
mach-spear
mach-sti
mach-sunxi
mach-tegra
mach-u300 kbuild: remove unnecessary variable initializaions 2014-10-02 13:55:02 +02:00
mach-ux500
mach-versatile
mach-vexpress
mach-vt8500 arm, vt8500, LLVMLlinux: Use mcr instead of mcr% for mach-vt8500 2014-09-26 01:49:03 +02:00
mach-w90x900
mach-zynq ACPI and power management updates for 3.18-rc1 2014-10-09 16:07:43 -04:00
mm Samsung fixes for v3.18 2014-10-14 23:31:13 -07:00
net net: bpf: arm: make hole-faulting more robust 2014-09-23 12:40:22 -04:00
nwfpe
oprofile
plat-iop kbuild: remove unnecessary variable initializaions 2014-10-02 13:55:02 +02:00
plat-omap Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2014-10-14 09:22:26 +02:00
plat-orion
plat-pxa ARM: pxa: ssp: provide platform_device_id for PXA3xx 2014-09-19 01:56:02 +08:00
plat-samsung Samsung fixes for v3.18 2014-10-14 23:31:13 -07:00
plat-versatile
tools
vfp
xen
Kconfig xen: features and fixes for 3.18-rc0 2014-10-11 20:29:01 -04:00
Kconfig-nommu
Kconfig.debug ARM: SoC platform changes for 3.18 2014-10-08 17:13:04 -04:00
Makefile Merge branch 'kbuild' of git://git.kernel.org/pub/scm/linux/kernel/git/mmarek/kbuild 2014-10-14 09:22:26 +02:00