On 16/10/13 18:02, Anup Patel wrote:
The PSCI SYSTEM_OFF and SYSTEM_RESET functions are VM or Guest level functions hence cannot be emulated by the in-kernel PSCI emulation code.
Why can't we implement system-wide functionality in the kernel? I fail to see the issue here.
To tackle this, we forward PSCI SYSTEM_OFF and SYSTEM_RESET function calls from Guest to user space (i.e. QEMU or KVMTOOL) via KVM run structure with KVM_EXIT_PSCI exit reason.
I'm really not keen on this approach. Having part of the PSCI implementation offloaded to userspace means we don't have a complete implementation in KVM anymore, and we end-up duplicating functionality all over the place.
Also, OFF and RESET are not PSCI specific concepts, and could be implemented in various ways. I'm more inclined to return a *standardized* exit code that the various platforms can interpret.
M.