diff options
Diffstat (limited to 'mm/memory.c')
-rw-r--r-- | mm/memory.c | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/mm/memory.c b/mm/memory.c index 5823698c2b71..7c4cb4e8515b 100644 --- a/mm/memory.c +++ b/mm/memory.c @@ -57,6 +57,8 @@ #include <linux/swapops.h> #include <linux/elf.h> #include <linux/gfp.h> +#include <trace/swap.h> +#include <trace/fault.h> #include <asm/io.h> #include <asm/pgalloc.h> @@ -67,6 +69,10 @@ #include "internal.h" +DEFINE_TRACE(swap_in); +DEFINE_TRACE(page_fault_get_user_entry); +DEFINE_TRACE(page_fault_get_user_exit); + #ifndef CONFIG_NEED_MULTIPLE_NODES /* use the per-pgdat data instead for discontigmem - mbligh */ unsigned long max_mapnr; @@ -2747,6 +2753,7 @@ static int do_swap_page(struct mm_struct *mm, struct vm_area_struct *vma, /* Had to read the page from swap area: Major fault */ ret = VM_FAULT_MAJOR; count_vm_event(PGMAJFAULT); + trace_swap_in(page, entry); } else if (PageHWPoison(page)) { /* * hwpoisoned dirty swapcache pages are kept for killing |