linux_dsm_epyc7002/arch/arm
Marc Zyngier 9b4a300443 KVM: arm/arm64: timer: Add active state caching
Programming the active state in the (re)distributor can be an
expensive operation so it makes some sense to try and reduce
the number of accesses as much as possible. So far, we
program the active state on each VM entry, but there is some
opportunity to do less.

An obvious solution is to cache the active state in memory,
and only program it in the HW when conditions change. But
because the HW can also change things under our feet (the active
state can transition from 1 to 0 when the guest does an EOI),
some precautions have to be taken, which amount to only caching
an "inactive" state, and always programing it otherwise.

With this in place, we observe a reduction of around 700 cycles
on a 2GHz GICv2 platform for a NULL hypercall.

Reviewed-by: Christoffer Dall <christoffer.dall@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
2016-02-29 18:34:22 +00:00
..
boot Two omap fixes for omaps against v4.5-rc5: 2016-02-24 00:10:11 -08:00
common ARM: 8519/1: ICST: try other dividends than 1 2016-02-11 14:12:33 +00:00
configs fbdev fixes for v4.5 2016-02-12 09:39:34 -08:00
crypto arm/arm64: crypto: assure that ECB modes don't require an IV 2016-02-15 15:48:29 +00:00
firmware
include arm64: KVM: Add a new vcpu device control group for PMUv3 2016-02-29 18:34:21 +00:00
kernel ARM: KVM: Remove unused hyp_pc field 2016-02-29 18:34:15 +00:00
kvm KVM: arm/arm64: timer: Add active state caching 2016-02-29 18:34:22 +00:00
lib arm, thp: remove infrastructure for handling splitting PMDs 2016-01-15 17:56:32 -08:00
mach-alpine
mach-asm9260
mach-at91 ARM: SoC cleanups for v4.5 2016-01-20 17:55:20 -08:00
mach-axxia
mach-bcm Merge tag 'bcm2835-soc-next-2015-12-28' of http://github.com/anholt/linux into next/soc 2015-12-31 17:37:12 +01:00
mach-berlin
mach-clps711x gpio: generic: factor into gpio_chip struct 2016-01-05 11:21:00 +01:00
mach-cns3xxx
mach-davinci ARM: SoC multiplatform code changes for v4.5 2016-01-20 18:03:56 -08:00
mach-digicolor
mach-dove
mach-ebsa110
mach-efm32
mach-ep93xx
mach-exynos ARM: SoC platform updates for v4.5 2016-01-20 18:10:05 -08:00
mach-footbridge ARM: debug-ll: rework footbridge handling 2015-12-15 23:43:29 +01:00
mach-gemini
mach-highbank
mach-hisi
mach-imx ARM: SoC platform updates for v4.5 2016-01-20 18:10:05 -08:00
mach-integrator Merge branch 'treewide/cleanup' into next/multiplatform 2015-12-18 17:07:52 +01:00
mach-iop13xx
mach-iop32x
mach-iop33x
mach-ixp4xx MTD updates for v4.5: 2016-01-13 11:25:54 -08:00
mach-keystone
mach-ks8695
mach-lpc18xx
mach-lpc32xx
mach-mediatek ARM: DT updates for v4.5 2016-01-20 18:16:29 -08:00
mach-meson
mach-mmp
mach-moxart
mach-mv78xx0
mach-mvebu
mach-mxs
mach-netx
mach-nomadik
mach-nspire
mach-omap1 ARM: SoC platform updates for v4.5 2016-01-20 18:10:05 -08:00
mach-omap2 ARM: OMAP2+: Fix onenand initialization to avoid filesystem corruption 2016-02-22 09:24:10 -08:00
mach-orion5x ARM: SoC multiplatform code changes for v4.5 2016-01-20 18:03:56 -08:00
mach-picoxcell
mach-prima2
mach-pxa ARM: SoC multiplatform code changes for v4.5 2016-01-20 18:03:56 -08:00
mach-qcom
mach-realview ARM: realview: use "depends on" instead of "if" after prompt 2016-02-01 12:19:10 -08:00
mach-rockchip Merge branch 'treewide/cleanup' into next/soc 2015-12-22 13:10:00 -08:00
mach-rpc
mach-s3c24xx ARM: s3c: simplify s3c_irqwake_{e,}intallow definition 2015-12-31 17:26:18 +01:00
mach-s3c64xx ARM: SoC multiplatform code changes for v4.5 2016-01-20 18:03:56 -08:00
mach-s5pv210
mach-sa1100 ARM: sa1100/simpad: Be sure to clamp return value 2015-12-22 14:57:50 -08:00
mach-shmobile ARM: shmobile: Remove shmobile_boot_arg 2016-02-17 18:27:21 +09:00
mach-socfpga
mach-spear
mach-sti ARM: SoC cleanups for v4.5 2016-01-20 17:55:20 -08:00
mach-stm32
mach-sunxi
mach-tango ARM: tango: use "depends on" instead of "if" after prompt 2016-02-01 12:18:49 -08:00
mach-tegra ARM: tegra: Core SoC changes for v4.5-rc1 2016-01-12 10:14:52 -08:00
mach-u300
mach-uniphier Merge branch 'treewide/cleanup' into next/soc 2015-12-22 13:10:00 -08:00
mach-ux500 ARM: SoC cleanups for v4.5 2016-01-20 17:55:20 -08:00
mach-versatile ARM: versatile: convert to multi-platform 2015-12-15 23:54:48 +01:00
mach-vexpress
mach-vt8500
mach-w90x900
mach-zx
mach-zynq Merge branch 'treewide/cleanup' into next/soc 2015-12-22 13:10:00 -08:00
mm mm: ASLR: use get_random_long() 2016-02-27 10:28:52 -08:00
net ARM: net: bpf: fix zero right shift 2016-01-06 01:32:09 -05:00
nwfpe
oprofile
plat-iop
plat-omap
plat-orion
plat-pxa
plat-samsung ARM: SoC multiplatform code changes for v4.5 2016-01-20 18:03:56 -08:00
plat-versatile
probes
tools
vdso
vfp
xen xen/arm: set the system time in Xen via the XENPF_settime64 hypercall 2015-12-21 14:40:58 +00:00
Kconfig Merge branch 'akpm' (patches from Andrew) 2016-01-21 12:32:08 -08:00
Kconfig-nommu
Kconfig.debug ARM: SoC fixes for v4.5 merge window 2016-01-22 17:26:00 -08:00
Makefile ARM: SoC defconfig updates for v4.5 2016-01-20 18:29:13 -08:00