Thread (46 messages) 46 messages, 6 authors, 2013-01-24

[kvmarm] [PATCH v6 14/15] KVM: ARM: Power State Coordination Interface implementation

From: Christoffer Dall <hidden>
Date: 2013-01-21 14:50:18
Also in: kvm

On Mon, Jan 21, 2013 at 5:04 AM, Marc Zyngier [off-list ref] wrote:
On Sun, 20 Jan 2013 18:35:51 -0500, Christoffer Dall
[off-list ref] wrote:
quoted
On Thu, Jan 17, 2013 at 10:55 AM, Marc Zyngier [off-list ref]
wrote:
quoted
On 16/01/13 17:59, Christoffer Dall wrote:
quoted
From: Marc Zyngier <redacted>

Implement the PSCI specification (ARM DEN 0022A) to control
virtual CPUs being "powered" on or off.

PSCI/KVM is detected using the KVM_CAP_ARM_PSCI capability.

A virtual CPU can now be initialized in a "powered off" state,
using the KVM_ARM_VCPU_POWER_OFF feature flag.

The guest can use either SMC or HVC to execute a PSCI function.

Reviewed-by: Will Deacon <redacted>
Signed-off-by: Marc Zyngier <redacted>
Signed-off-by: Christoffer Dall <redacted>
A few bits went wrong when you reworked this patch. See below.
[...]
quoted
quoted
quoted
@@ -443,13 +445,17 @@ static int handle_hvc(struct kvm_vcpu *vcpu,
struct kvm_run *run)
      trace_kvm_hvc(*vcpu_pc(vcpu), *vcpu_reg(vcpu, 0),
                    vcpu->arch.hsr & HSR_HVC_IMM_MASK);

+     if (kvm_psci_call(vcpu))
+             return 1;
+
      return 1;
No undef injection if there is no PSCI match?
You haven't addressed this issue in you patch.
right, well, it's actually quite nice not having it give you an
undefined exception when it logs the trace event. The psci protocol
relies on a confirmation in form of a return value anyhow, so it was
actually on purpose to remove it, so you can do things like easily
measure exit times or probe places in the guest.

Let me know what you think.
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help