summaryrefslogtreecommitdiffstats
path: root/virt/kvm/arm/vgic/vgic-v2.c
diff options
context:
space:
mode:
authorAndre Przywara <andre.przywara@arm.com>2015-12-01 22:36:37 +0000
committerChristoffer Dall <christoffer.dall@linaro.org>2016-05-20 15:40:03 +0200
commit7d450e2821710718fd6703e9c486249cee913bab (patch)
tree02dc0e9f84440e3d77ee72f32e27d53bcedda758 /virt/kvm/arm/vgic/vgic-v2.c
parentc3199f28e09496aa9fec9313b4f6e90e7dc913f0 (diff)
downloadop-kernel-dev-7d450e2821710718fd6703e9c486249cee913bab.zip
op-kernel-dev-7d450e2821710718fd6703e9c486249cee913bab.tar.gz
KVM: arm/arm64: vgic-new: Add userland access to VGIC dist registers
Userland may want to save and restore the state of the in-kernel VGIC, so we provide the code which takes a userland request and translate that into calls to our MMIO framework. From Christoffer: When accessing the VGIC state from userspace we really don't want a VCPU to be messing with the state at the same time, and the API specifies that we should return -EBUSY if any VCPUs are running. Check and prevent VCPUs from running by grabbing their mutexes, one by one, and error out if we fail. (Note: This could potentially be simplified to just do a simple check and see if any VCPUs are running, and return -EBUSY then, without enforcing the locking throughout the duration of the uaccess, if we think that taking/releasing all these mutexes for every single GIC register access is too heavyweight.) Signed-off-by: Andre Przywara <andre.przywara@arm.com> Signed-off-by: Christoffer Dall <christoffer.dall@linaro.org>
Diffstat (limited to 'virt/kvm/arm/vgic/vgic-v2.c')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud