Re: [PATCH] trace-cmd: fix kvm_mmu_prepare_zap_page even name and kvm_mmu_get_page event output in kvm plugin

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2012-12-25 at 13:46 +0200, Gleb Natapov wrote:
> kvm_mmu_zap_page even was renamed to kvm_mmu_prepare_zap_page.
> Print out created field for kvm_mmu_get_page event.

trace-cmd needs to be backward compatible with older kernels. If older
kernels used kvm_mmu_zap_page, then please add a check for that and have
the plugin cope with either one.

Thanks,

-- Steve

> 
> Signed-off-by: Gleb Natapov <gleb@xxxxxxxxxx>
> diff --git a/plugin_kvm.c b/plugin_kvm.c
> index 55812ef..adc5694 100644
> --- a/plugin_kvm.c
> +++ b/plugin_kvm.c
> @@ -382,7 +382,7 @@ static int kvm_mmu_print_role(struct trace_seq *s, struct pevent_record *record,
>  	} else
>  		trace_seq_printf(s, "WORD: %08x", role.word);
>  
> -	pevent_print_num_field(s, " root %u",  event,
> +	pevent_print_num_field(s, " root %u ",  event,
>  			       "root_count", record, 1);
>  
>  	if (pevent_get_field_val(s, event, "unsync", record, &val, 1) < 0)
> @@ -397,6 +397,11 @@ static int kvm_mmu_get_page_handler(struct trace_seq *s, struct pevent_record *r
>  {
>  	unsigned long long val;
>  
> +	if (pevent_get_field_val(s, event, "created", record, &val, 1) < 0)
> +		return -1;
> +
> +	trace_seq_printf(s, "%s ", val ? "new" : "existing");
> +
>  	if (pevent_get_field_val(s, event, "gfn", record, &val, 1) < 0)
>  		return -1;
>  
> @@ -430,7 +435,7 @@ int PEVENT_PLUGIN_LOADER(struct pevent *pevent)
>  	pevent_register_event_handler(pevent, -1, "kvmmmu", "kvm_mmu_unsync_page",
>  				      kvm_mmu_print_role, NULL);
>  
> -	pevent_register_event_handler(pevent, -1, "kvmmmu", "kvm_mmu_zap_page",
> +	pevent_register_event_handler(pevent, -1, "kvmmmu", "kvm_mmu_prepare_zap_page",
>  				      kvm_mmu_print_role, NULL);
>  
>  	return 0;
> --
> 			Gleb.


--
To unsubscribe from this list: send the line "unsubscribe kvm" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html


[Index of Archives]     [KVM ARM]     [KVM ia64]     [KVM ppc]     [Virtualization Tools]     [Spice Development]     [Libvirt]     [Libvirt Users]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite Questions]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux