Thread (80 messages) 80 messages, 6 authors, 2014-12-08
STALE4215d REVIEWED: 1 (0M)

[PATCH v4 05/19] arm/arm64: KVM: introduce per-VM ops

From: Christoffer Dall <hidden>
Date: 2014-11-23 09:58:23

On Fri, Nov 14, 2014 at 10:07:49AM +0000, Andre Przywara wrote:
Currently we only have one virtual GIC model supported, so all guests
use the same emulation code. With the addition of another model we
end up with different guests using potentially different vGIC models,
so we have to split up some functions to be per VM.
Introduce a vgic_vm_ops struct to hold function pointers for those
functions that are different and provide the necessary code to
initialize them.
Also split up the kvm_vgic_init() function to separate out VGIC model
specific functionality into a separate function, which will later be
different for a GICv3 model.

Signed-off-by: Andre Przywara <andre.przywara@arm.com>
---
Changelog v3...v4:
- add accessor functions for vm_ops members
- introduce init_vgic_model() to differentiate between guest GIC models
- simplify vgic_v2_init_emulation() 
- help debugging by hinting on handle_mmio codeflow in comment
That helped a lot as this patch goes, thanks for reworking the function
pointers and init sequence:

Reviewed-by: Christoffer Dall <redacted>
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help