lkml.org 
[lkml]   [2013]   [Nov]   [22]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
SubjectRe: [PATCH 14/22] tools lib traceevent: Update kvm plugin with is_writable_pte helper
From
Date
2013-11-21 (목), 12:01 +0100, Jiri Olsa:
> Adding is_writable_pte print helper function, so the
> kvmmmu:fast_page_fault print format gets resolved properly.
>
> The diff of 'perf script' output generated by old and new code:
> (data was generated by 'perf record -e 'kvm:*,kvmmmu:*' -a')
>
> --- script.kvm.old
> +++ script.kvm.new
> - qemu-system-x86 3290 [002] 10708.755312: kvmmmu:fast_page_fault: [FAILED TO PARSE] vcpu_id=0 gva=4094486080 error_code=3 sptep=0xffff88019f1e3670 old_spte=336391285 new_spte=336391287 retry=1
> + qemu-system-x86 3290 [002] 10708.755312: kvmmmu:fast_page_fault: vcpu 0 gva f40ce640 error_code P|W sptep 0xffff88019f1e3670 old 0x140cec75 new 140cec77 spurious 0 fixed 1

[SNIP]
> +unsigned long long process_is_writable_pte(struct trace_seq *s,
> + unsigned long long *args)
> +{
> + unsigned long pte = args[0];
> + return pte & PT_WRITABLE_MASK;
> +}
> +
> int PEVENT_PLUGIN_LOADER(struct pevent *pevent)
> {
> init_disassembler();
> @@ -415,5 +425,12 @@ int PEVENT_PLUGIN_LOADER(struct pevent *pevent)
> pevent_register_event_handler(pevent, -1, "kvmmmu",
> "kvm_mmu_prepare_zap_page", kvm_mmu_print_role,
> NULL);
> +
> + pevent_register_print_function(pevent,
> + process_is_writable_pte,
> + PEVENT_FUNC_ARG_INT,

Same as the previous reply - return type of the function is
inconsistent.

And please also consider making the function static.

Thanks,
Namhyung


> + "is_writable_pte",
> + PEVENT_FUNC_ARG_LONG,
> + PEVENT_FUNC_ARG_VOID);
> return 0;
> }



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

\
 
 \ /
  Last update: 2013-11-22 17:01    [W:0.732 / U:0.408 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site