android_kernel_oneplus_msm8998/arch/arm
Mark Rutland fac39ee2e5 arm64: KVM: Skip MMIO insn after emulation
[ Upstream commit 0d640732dbebed0f10f18526de21652931f0b2f2 ]

When we emulate an MMIO instruction, we advance the CPU state within
decode_hsr(), before emulating the instruction effects.

Having this logic in decode_hsr() is opaque, and advancing the state
before emulation is problematic. It gets in the way of applying
consistent single-step logic, and it prevents us from being able to fail
an MMIO instruction with a synchronous exception.

Clean this up by only advancing the CPU state *after* the effects of the
instruction are emulated.

Cc: Peter Maydell <peter.maydell@linaro.org>
Reviewed-by: Alex Bennée <alex.bennee@linaro.org>
Reviewed-by: Christoffer Dall <christoffer.dall@arm.com>
Signed-off-by: Mark Rutland <mark.rutland@arm.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Sasha Levin <sashal@kernel.org>
2019-02-20 10:13:10 +01:00
..
boot ARM: dts: Fix OMAP4430 SDP Ethernet startup 2019-02-20 10:13:08 +01:00
common ARM: sa1111: fix pcmcia suspend/resume 2016-10-07 15:23:44 +02:00
configs Revert "ARM: imx_v6_v7_defconfig: Select ULPI support" 2018-09-15 09:40:40 +02:00
crypto arm: crypto: reduce priority of bit-sliced AES cipher 2017-11-21 09:21:18 +01:00
firmware
include irqchip/gic-v3: Add missing barrier to 32bit version of gic_read_iar() 2018-09-15 09:40:41 +02:00
kernel ARM: 8808/1: kexec:offline panic_smp_self_stop CPU 2019-02-20 10:13:04 +01:00
kvm arm64: KVM: Skip MMIO insn after emulation 2019-02-20 10:13:10 +01:00
lib ARM: 8772/1: kprobes: Prohibit kprobes on get_user functions 2018-05-26 08:48:57 +02:00
mach-alpine
mach-asm9260
mach-at91 ARM: remove duplicate 'const' annotations' 2017-10-08 10:14:20 +02:00
mach-axxia
mach-bcm ARM: remove duplicate 'const' annotations' 2017-10-08 10:14:20 +02:00
mach-berlin
mach-clps711x
mach-cns3xxx ARM: cns3xxx: Fix writing to wrong PCI config registers after alignment 2019-02-06 19:43:07 +01:00
mach-davinci ARM: davinci: da8xx: Create DSP device only when assigned memory 2018-04-13 19:50:09 +02:00
mach-digicolor
mach-dove
mach-ebsa110
mach-efm32
mach-ep93xx
mach-exynos ARM: exynos: Clear global variable on init error path 2018-09-26 08:35:06 +02:00
mach-footbridge
mach-gemini
mach-highbank
mach-hisi ARM: hisi: check of_iomap and fix missing of_node_put 2018-09-26 08:35:09 +02:00
mach-imx ARM: imx: update the cpu power up timing setting on i.mx6sx 2019-01-13 10:05:31 +01:00
mach-integrator
mach-iop13xx
mach-iop32x
mach-iop33x
mach-ixp4xx
mach-keystone
mach-ks8695
mach-lpc18xx
mach-lpc32xx
mach-mediatek
mach-meson
mach-mmp
mach-moxart
mach-mv78xx0
mach-mvebu ARM: mvebu: declare asm symbols as character arrays in pmsu.c 2018-10-10 08:52:06 +02:00
mach-mxs
mach-netx
mach-nomadik
mach-nspire
mach-omap1 ARM: OMAP1: ams-delta: Fix possible use of uninitialized field 2018-12-17 21:55:09 +01:00
mach-omap2 ARM: OMAP2+: hwmod: Fix some section annotations 2019-02-20 10:13:05 +01:00
mach-orion5x
mach-picoxcell
mach-prima2
mach-pxa ARM: pxa: avoid section mismatch warning 2019-02-20 10:13:09 +01:00
mach-qcom
mach-realview
mach-rockchip
mach-rpc
mach-s3c24xx
mach-s3c64xx
mach-s5pv210
mach-sa1100 ARM: sa1100: clear reset status prior to reboot 2016-10-07 15:23:43 +02:00
mach-shmobile ARM: shmobile: fix regulator quirk for Gen2 2016-10-07 15:23:43 +02:00
mach-socfpga
mach-spear ARM: remove duplicate 'const' annotations' 2017-10-08 10:14:20 +02:00
mach-sti
mach-stm32
mach-sunxi
mach-tegra ARM: tegra: select USB_ULPI from EHCI rather than platform 2018-02-25 11:03:51 +01:00
mach-u300
mach-uniphier
mach-ux500 ARM: ux500: fix prcmu_is_cpu_in_wfi() calculation 2017-01-26 08:23:49 +01:00
mach-versatile
mach-vexpress
mach-vt8500
mach-w90x900
mach-zx
mach-zynq ARM: zynq: Reserve correct amount of non-DMA RAM 2017-01-15 13:41:36 +01:00
mm ARM: 8814/1: mm: improve/fix ARM v7_dma_inv_range() unaligned address handling 2018-12-21 14:09:53 +01:00
net
nwfpe
oprofile
plat-iop
plat-omap ARM: OMAP: Fix dmtimer init for omap1 2018-05-30 07:49:00 +02:00
plat-orion
plat-pxa ARM: pxa: add the number of DMA requestor lines 2017-10-05 09:41:48 +02:00
plat-samsung
plat-versatile
probes ARM: 8770/1: kprobes: Prohibit probing on optimized_callback 2018-05-26 08:48:57 +02:00
tools
vdso
vfp
xen swiotlb-xen: implement xen_swiotlb_dma_mmap callback 2017-10-05 09:41:48 +02:00
Kconfig
Kconfig-nommu ARM: 8635/1: nommu: allow enabling REMAP_VECTORS_TO_RAM 2017-10-08 10:14:17 +02:00
Kconfig.debug
Makefile