Re: [PATCH v4 06/17] KVM: arm64: Add pkvm_hyp_req infrastructure
Aneesh Kumar K.V <[email protected]>
| Newsgroups | org.infradead.lists.linux-arm-kernel,dev.linux.lists.kvmarm |
|---|---|
| Message-ID | <[email protected]> |
Vincent Donnefort <[email protected]> writes: > Introduce a struct pkvm_hyp_req to enable the pKVM hypervisor to request > resources from the host. > > Provide serialisation helpers to transport these requests via SMCCC > registers (starting from a2): > > pkvm_hyp_req_to_smccc() to encode into the SMCCC args. > smccc_to_pkvm_hyp_req() to decode them. > > When the hypervisor raises a request, the host must handle it and retry > the HVC. To automate this sequence, introduce the pkvm_call_hyp_req() > macro. This intercepts pending requests, invokes the handler and retries > the HVC. > > Additionally, introduce a trace event to track the handling of these > requests. > > Reviewed-by: Fuad Tabba <[email protected]> > Tested-by: Fuad Tabba <[email protected]> > Signed-off-by: Vincent Donnefort <[email protected]> This is very similar to the memory-transferring SRO operations described in section B4.3, RMI operations, of https://support.arm.com/documentation/den0137/2-0bet3/ The SRO model covers more details than the pkvm_hyp_req infrastructure. Should we look at making the two more similar? -aneesh