Re: [PATCH V2 3/3] kvm: add tracepoint for fast mmio

From: Michael S. Tsirkin
Date: Tue Aug 25 2015 - 07:34:59 EST


On Tue, Aug 25, 2015 at 03:47:15PM +0800, Jason Wang wrote:
> Cc: Gleb Natapov <gleb@xxxxxxxxxx>
> Cc: Paolo Bonzini <pbonzini@xxxxxxxxxx>
> Cc: Michael S. Tsirkin <mst@xxxxxxxxxx>
> Signed-off-by: Jason Wang <jasowang@xxxxxxxxxx>
> ---
> arch/x86/kvm/trace.h | 17 +++++++++++++++++
> arch/x86/kvm/vmx.c | 1 +
> arch/x86/kvm/x86.c | 1 +
> 3 files changed, 19 insertions(+)
>
> diff --git a/arch/x86/kvm/trace.h b/arch/x86/kvm/trace.h
> index 4eae7c3..2d4e81a 100644
> --- a/arch/x86/kvm/trace.h
> +++ b/arch/x86/kvm/trace.h
> @@ -128,6 +128,23 @@ TRACE_EVENT(kvm_pio,
> __entry->count > 1 ? "(...)" : "")
> );
>
> +TRACE_EVENT(kvm_fast_mmio,
> + TP_PROTO(u64 gpa),
> + TP_ARGS(gpa),
> +
> + TP_STRUCT__entry(
> + __field(u64, gpa)
> + ),
> +
> + TP_fast_assign(
> + __entry->gpa = gpa;
> + ),
> +
> + TP_printk("fast mmio at gpa 0x%llx", __entry->gpa)
> +);
> +
> +
> +

don't add multiple empty lines please.

> /*
> * Tracepoint for cpuid.
> */
> diff --git a/arch/x86/kvm/vmx.c b/arch/x86/kvm/vmx.c
> index 83b7b5c..a55d279 100644
> --- a/arch/x86/kvm/vmx.c
> +++ b/arch/x86/kvm/vmx.c
> @@ -5831,6 +5831,7 @@ static int handle_ept_misconfig(struct kvm_vcpu *vcpu)
> gpa = vmcs_read64(GUEST_PHYSICAL_ADDRESS);
> if (!kvm_io_bus_write(vcpu, KVM_FAST_MMIO_BUS, gpa, 0, NULL)) {
> skip_emulated_instruction(vcpu);
> + trace_kvm_fast_mmio(gpa);
> return 1;
> }
>
> diff --git a/arch/x86/kvm/x86.c b/arch/x86/kvm/x86.c
> index 8f0f6ec..36cf78e 100644
> --- a/arch/x86/kvm/x86.c
> +++ b/arch/x86/kvm/x86.c
> @@ -8254,6 +8254,7 @@ bool kvm_arch_has_noncoherent_dma(struct kvm *kvm)
> EXPORT_SYMBOL_GPL(kvm_arch_has_noncoherent_dma);
>
> EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_exit);
> +EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_fast_mmio);
> EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_inj_virq);
> EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_page_fault);
> EXPORT_TRACEPOINT_SYMBOL_GPL(kvm_msr);
> --
> 2.1.4
--
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/