Re: [patch 4/4] KVM-trace port to tracepoints

From: Anthony Liguori
Date: Thu Jul 17 2008 - 12:53:39 EST


Hi Mathieu,

It's difficult to review your patches because they aren't inlined.

At any rate, this patches are unusable with SVM. They try to execute VT instructions unconditionally. For instance, you changed:

- KVMTRACE_1D(INTR, vcpu, vmcs_read32(VM_EXIT_INTR_INFO), handler);
+ trace_kvm_intr(vcpu);

Which lived in VT-specific code (vmx.c)

To:

+static void probe_kvm_intr(struct kvm_vcpu *vcpu)
+{
+ kvm_add_trace(KVM_TRC_INTR, vcpu, 1,
+ (u32 []){ vmcs_read32(VM_EXIT_INTR_INFO) });
+}
+

Which lives in common code (kvm_trace.c). But vmcs_read32() is VT-specific and should not be used in common code so this motion is wrong. Why not just pass more arguments to probe_kvm_intr()? Then your first two patches can be dropped completely.

Regards,

Anthony Liguori

Mathieu Desnoyers wrote:
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/