Re: [PATCH v3 2/5] mm/compaction: enhance tracepoint output for compaction begin/end

From: Andrew Morton
Date: Thu Jan 15 2015 - 20:16:44 EST


On Thu, 15 Jan 2015 16:41:10 +0900 Joonsoo Kim <iamjoonsoo.kim@xxxxxxx> wrote:

> We now have tracepoint for begin event of compaction and it prints
> start position of both scanners, but, tracepoint for end event of
> compaction doesn't print finish position of both scanners. It'd be
> also useful to know finish position of both scanners so this patch
> add it. It will help to find odd behavior or problem on compaction
> internal logic.
>
> And, mode is added to both begin/end tracepoint output, since
> according to mode, compaction behavior is quite different.
>
> And, lastly, status format is changed to string rather than
> status number for readability.
>
> ...
>
> + TP_printk("zone_start=0x%lx migrate_pfn=0x%lx free_pfn=0x%lx zone_end=0x%lx, mode=%s status=%s",
> + __entry->zone_start,
> + __entry->migrate_pfn,
> + __entry->free_pfn,
> + __entry->zone_end,
> + __entry->sync ? "sync" : "async",
> + compaction_status_string[__entry->status])
> );
>
> #endif /* _TRACE_COMPACTION_H */
> diff --git a/mm/compaction.c b/mm/compaction.c
> index 546e571..2d86a20 100644
> --- a/mm/compaction.c
> +++ b/mm/compaction.c
> @@ -19,6 +19,14 @@
> #include "internal.h"
>
> #ifdef CONFIG_COMPACTION
> +char *compaction_status_string[] = {
> + "deferred",
> + "skipped",
> + "continue",
> + "partial",
> + "complete",
> +};

compaction_status_string[] is unreferenced if tracing is disabled -
more ifdeffery is needed?
--
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/