[PATCH v1 10/10] add tracepoints

From: Minchan Kim
Date: Wed May 11 2011 - 13:17:52 EST


This patch adds some tracepints for see the effect this patch
series.
This tracepoints isn't for merge but just see the effect.

Cc: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx>
Cc: KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx>
Cc: Mel Gorman <mgorman@xxxxxxx>
Cc: Rik van Riel <riel@xxxxxxxxxx>
Cc: Andrea Arcangeli <aarcange@xxxxxxxxxx>
Signed-off-by: Minchan Kim <minchan.kim@xxxxxxxxx>
---
mm/compaction.c | 2 ++
mm/migrate.c | 7 +++++++
mm/vmscan.c | 3 +--
3 files changed, 10 insertions(+), 2 deletions(-)

diff --git a/mm/compaction.c b/mm/compaction.c
index 00e710a..92c180d 100644
--- a/mm/compaction.c
+++ b/mm/compaction.c
@@ -16,6 +16,7 @@
#include <linux/sysfs.h>
#include "internal.h"

+#include <trace/events/inorder_putback.h>
#define CREATE_TRACE_POINTS
#include <trace/events/compaction.h>

@@ -333,6 +334,7 @@ static unsigned long isolate_migratepages(struct zone *zone,
if (__isolate_inorder_lru_page(page, mode, 0, &prev_page) != 0)
continue;

+ trace_mm_compact_isolate(prev_page, page);
VM_BUG_ON(PageTransCompound(page));

/* Successfully isolated */
diff --git a/mm/migrate.c b/mm/migrate.c
index f94fe65..6a2eca9 100644
--- a/mm/migrate.c
+++ b/mm/migrate.c
@@ -39,6 +39,9 @@

#include "internal.h"

+#define CREATE_TRACE_POINTS
+#include <trace/events/inorder_putback.h>
+
#define lru_to_page(_head) (list_entry((_head)->prev, struct page, lru))

/*
@@ -96,10 +99,12 @@ void putback_inorder_lru_pages(struct inorder_lru *l)
spin_lock_irq(&zone->lru_lock);
prev = page->ilru.prev_page;
if (keep_lru_order(page, prev)) {
+ trace_mm_compaction_inorder(page, page);
putback_page_to_lru(page, prev);
spin_unlock_irq(&zone->lru_lock);
}
else {
+ trace_mm_compaction_outoforder(page, page);
spin_unlock_irq(&zone->lru_lock);
putback_lru_page(page);
}
@@ -1052,6 +1057,7 @@ move_newpage:
if (keep_lru_order(page, prev_page)) {
putback_page_to_lru(newpage, prev_page);
spin_unlock_irq(&zone->lru_lock);
+ trace_mm_compaction_inorder(page, newpage);
/*
* The newpage will replace LRU position of old page and
* old one would be freed. So let's adjust prev_page of pages
@@ -1063,6 +1069,7 @@ move_newpage:
else {

spin_unlock_irq(&zone->lru_lock);
+ trace_mm_compaction_inorder(page, newpage);
putback_lru_page(newpage);
}

diff --git a/mm/vmscan.c b/mm/vmscan.c
index 62d5186..2e7cbad 100644
--- a/mm/vmscan.c
+++ b/mm/vmscan.c
@@ -49,10 +49,9 @@
#include <linux/swapops.h>

#include "internal.h"
-
+#include <trace/events/inorder_putback.h>
#define CREATE_TRACE_POINTS
#include <trace/events/vmscan.h>
-
/*
* reclaim_mode determines how the inactive list is shrunk
* RECLAIM_MODE_SINGLE: Reclaim only order-0 pages
--
1.7.1

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