[lttng-dev] [RFC-Patch 2/2] x86:Instruments page fault trace event

Mathieu Desnoyers mathieu.desnoyers at efficios.com
Mon Apr 8 06:58:54 EDT 2013


* Francis Deslauriers (fdeslaur at gmail.com) wrote:
> Signed-off-by: Francis Deslauriers <fdeslaur at gmail.com>
> Reviewed-by: Raphaël Beamonte <raphael.beamonte at polymtl.ca>
> ---
>  arch/x86/mm/fault.c |    5 +++++
>  1 file changed, 5 insertions(+)
> 
> diff --git a/arch/x86/mm/fault.c b/arch/x86/mm/fault.c
> index 2b97525..f41a5a0 100644
> --- a/arch/x86/mm/fault.c
> +++ b/arch/x86/mm/fault.c
> @@ -20,6 +20,9 @@
>  #include <asm/fixmap.h>			/* VSYSCALL_START		*/
>  #include <asm/context_tracking.h>	/* exception_enter(), ...	*/
>  
> +#define CREATE_TRACE_POINTS
> +#include <trace/events/fault.h>		/* trace_page_fault_*(), ...	*/
> +
>  /*
>   * Page fault error code bits:
>   *
> @@ -1183,7 +1186,9 @@ good_area:
>  	 * make sure we exit gracefully rather than endlessly redo
>  	 * the fault:
>  	 */
> +	trace_page_fault_entry(regs, address, write);
>  	fault = handle_mm_fault(mm, vma, address, flags);
> +	trace_page_fault_exit(fault);

If you look at the lttng 0.x instrumentation, I think there are other
tracepoints in get user pages too ?

Thanks,

Mathieu

>  
>  	if (unlikely(fault & (VM_FAULT_RETRY|VM_FAULT_ERROR))) {
>  		if (mm_fault_error(regs, error_code, address, fault))
> -- 
> 1.7.10.4
> 
> 
> _______________________________________________
> lttng-dev mailing list
> lttng-dev at lists.lttng.org
> http://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev

-- 
Mathieu Desnoyers
EfficiOS Inc.
http://www.efficios.com



More information about the lttng-dev mailing list