[v5,3/7] x86: mm/gup: add gup trace points

Message ID 1449696151-4195-4-git-send-email-yang.shi@linaro.org
State New
Headers show

Commit Message

Yang Shi Dec. 9, 2015, 9:22 p.m.
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: x86@kernel.org
Signed-off-by: Yang Shi <yang.shi@linaro.org>

---
 arch/x86/mm/gup.c | 6 ++++++
 1 file changed, 6 insertions(+)

-- 
2.0.2

--
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/

Comments

Yang Shi Jan. 13, 2016, 6:11 p.m. | #1
Hi folks,

Any comment for this one? The tracing part review has been done.

Thanks,
Yang


On 12/9/2015 1:22 PM, Yang Shi wrote:
> Cc: Thomas Gleixner <tglx@linutronix.de>

> Cc: Ingo Molnar <mingo@redhat.com>

> Cc: "H. Peter Anvin" <hpa@zytor.com>

> Cc: x86@kernel.org

> Signed-off-by: Yang Shi <yang.shi@linaro.org>

> ---

>   arch/x86/mm/gup.c | 6 ++++++

>   1 file changed, 6 insertions(+)

>

> diff --git a/arch/x86/mm/gup.c b/arch/x86/mm/gup.c

> index ae9a37b..df5f3ab 100644

> --- a/arch/x86/mm/gup.c

> +++ b/arch/x86/mm/gup.c

> @@ -12,6 +12,8 @@

>

>   #include <asm/pgtable.h>

>

> +#include <trace/events/gup.h>

> +

>   static inline pte_t gup_get_pte(pte_t *ptep)

>   {

>   #ifndef CONFIG_X86_PAE

> @@ -270,6 +272,8 @@ int __get_user_pages_fast(unsigned long start, int nr_pages, int write,

>   					(void __user *)start, len)))

>   		return 0;

>

> +	trace_gup_get_user_pages_fast(start, nr_pages);

> +

>   	/*

>   	 * XXX: batch / limit 'nr', to avoid large irq off latency

>   	 * needs some instrumenting to determine the common sizes used by

> @@ -373,6 +377,8 @@ int get_user_pages_fast(unsigned long start, int nr_pages, int write,

>   	} while (pgdp++, addr = next, addr != end);

>   	local_irq_enable();

>

> +	trace_gup_get_user_pages_fast(start, nr_pages);

> +

>   	VM_BUG_ON(nr != (end - start) >> PAGE_SHIFT);

>   	return nr;

>

>

Patch

diff --git a/arch/x86/mm/gup.c b/arch/x86/mm/gup.c
index ae9a37b..df5f3ab 100644
--- a/arch/x86/mm/gup.c
+++ b/arch/x86/mm/gup.c
@@ -12,6 +12,8 @@ 
 
 #include <asm/pgtable.h>
 
+#include <trace/events/gup.h>
+
 static inline pte_t gup_get_pte(pte_t *ptep)
 {
 #ifndef CONFIG_X86_PAE
@@ -270,6 +272,8 @@  int __get_user_pages_fast(unsigned long start, int nr_pages, int write,
 					(void __user *)start, len)))
 		return 0;
 
+	trace_gup_get_user_pages_fast(start, nr_pages);
+
 	/*
 	 * XXX: batch / limit 'nr', to avoid large irq off latency
 	 * needs some instrumenting to determine the common sizes used by
@@ -373,6 +377,8 @@  int get_user_pages_fast(unsigned long start, int nr_pages, int write,
 	} while (pgdp++, addr = next, addr != end);
 	local_irq_enable();
 
+	trace_gup_get_user_pages_fast(start, nr_pages);
+
 	VM_BUG_ON(nr != (end - start) >> PAGE_SHIFT);
 	return nr;