Re: [RESEND RFC v4 1/3] mm: add tracepoint for scanning pages

From: Vlastimil Babka
Date: Fri Sep 04 2015 - 12:07:40 EST


On 09/03/2015 10:51 PM, Ebru Akagunduz wrote:
> Using static tracepoints, data of functions is recorded.
> It is good to automatize debugging without doing a lot
> of changes in the source code.
>
> This patch adds tracepoint for khugepaged_scan_pmd,
> collapse_huge_page and __collapse_huge_page_isolate.
>
> Signed-off-by: Ebru Akagunduz <ebru.akagunduz@xxxxxxxxx>
> Acked-by: Kirill A. Shutemov <kirill.shutemov@xxxxxxxxxxxxxxx>
> Acked-by: Rik van Riel <riel@xxxxxxxxxx>
> ---
> Changes in v2:
> - Nothing changed
>
> Changes in v3:
> - Print page address instead of vm_start (Vlastimil Babka)
> - Define constants to specify exact tracepoint result (Vlastimil Babka)
>
> Changes in v4:
> - Change the constant prefix with SCAN_ instead of MM_ (Vlastimil Babka)
> - Move the constants into the enum (Vlastimil Babka)
> - Move the constants from mm.h to huge_memory.c
> (because only will be used in huge_memory.c) (Vlastimil Babka)
> - Print pfn in tracepoints (Vlastimil Babka)
> - Print scan result as string in tracepoint (Vlastimil Babka)
> (I tried to make same things to print string like mm/compaction.c.
> My patch does not print string, I skip something but could not see why)

How do you print the trace? Do you cat /sys/kernel/debug/tracing/trace_pipe
or use some tool such as trace-cmd? I have just recently realized that tools
don't print strings in the compaction tracepoints, which lead to a patch [1].
You could convert this patch in the same way and then it should work with
tracing tools. Sorry for previously suggesting a wrong example to follow.

[1] https://lkml.org/lkml/2015/8/27/373

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