Re: [PATCH 7/7] memcg: add mm_vmscan_memcg_isolate tracepoint

From: Mel Gorman
Date: Fri Jul 16 2010 - 09:19:19 EST


On Fri, Jul 16, 2010 at 12:21:09PM +0100, Mel Gorman wrote:
> On Fri, Jul 16, 2010 at 07:18:18PM +0900, KOSAKI Motohiro wrote:
> >
> > Memcg also need to trace page isolation information as global reclaim.
> > This patch does it.
> >
> > Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@xxxxxxxxxxxxxx>
> > ---
> > include/trace/events/vmscan.h | 15 +++++++++++++++
> > mm/memcontrol.c | 7 +++++++
> > 2 files changed, 22 insertions(+), 0 deletions(-)
> >
> > diff --git a/include/trace/events/vmscan.h b/include/trace/events/vmscan.h
> > index e37fe72..eefd399 100644
> > --- a/include/trace/events/vmscan.h
> > +++ b/include/trace/events/vmscan.h
> > @@ -213,6 +213,21 @@ DEFINE_EVENT(mm_vmscan_lru_isolate_template, mm_vmscan_lru_isolate,
> >
> > );
> >
> > +DEFINE_EVENT(mm_vmscan_lru_isolate_template, mm_vmscan_memcg_isolate,
> > +
> > + TP_PROTO(int order,
> > + unsigned long nr_requested,
>
> I just spotted that this is badly named by myself. It should have been
> order.
>

I meant it should have been nr_to_scan (not order) because it's easier to
translate between what is happening in the source when reading the tracepoints.

> > + unsigned long nr_scanned,
> > + unsigned long nr_taken,
> > + unsigned long nr_lumpy_taken,
> > + unsigned long nr_lumpy_dirty,
> > + unsigned long nr_lumpy_failed,
> > + int isolate_mode),
> > +
> > + TP_ARGS(order, nr_requested, nr_scanned, nr_taken, nr_lumpy_taken, nr_lumpy_dirty, nr_lumpy_failed, isolate_mode)
> > +
> > +);
> > +
> > TRACE_EVENT(mm_vmscan_writepage,
> >
> > TP_PROTO(struct page *page,
> > diff --git a/mm/memcontrol.c b/mm/memcontrol.c
> > index 81bc9bf..82e191f 100644
> > --- a/mm/memcontrol.c
> > +++ b/mm/memcontrol.c
> > @@ -52,6 +52,9 @@
> >
> > #include <asm/uaccess.h>
> >
> > +#include <trace/events/vmscan.h>
> > +
> > +
>
> Excessive whitespace there.
>
> Otherwise, I didn't spot any problems.
>
> > struct cgroup_subsys mem_cgroup_subsys __read_mostly;
> > #define MEM_CGROUP_RECLAIM_RETRIES 5
> > struct mem_cgroup *root_mem_cgroup __read_mostly;
> > @@ -1042,6 +1045,10 @@ unsigned long mem_cgroup_isolate_pages(unsigned long nr_to_scan,
> > }
> >
> > *scanned = scan;
> > +
> > + trace_mm_vmscan_memcg_isolate(0, nr_to_scan, scan, nr_taken,
> > + 0, 0, 0, mode);
> > +
> > return nr_taken;
> > }

--
Mel Gorman
Part-time Phd Student Linux Technology Center
University of Limerick IBM Dublin Software Lab
--
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/