From: compudj@krystal.dyndns.org (Mathieu Desnoyers)
Subject: [ltt-dev] ltt trace doesn't show event mm.page_alloc
Date: Sat, 19 Jun 2010 11:47:44 -0400 [thread overview]
Message-ID: <20100619154744.GA22882@Krystal> (raw)
In-Reply-To: <20100616180116.GW26286@hansolo.jdub.homelinux.org>
* Josh Boyer (jwboyer at linux.vnet.ibm.com) wrote:
> On Mon, Jun 14, 2010 at 10:16:46AM -0700, Dany Madden wrote:
> >Hi,
> >
> >Ltt trace doesn't show mm.page_alloc event with the mainline kernel:
> >
> >- mainline kernel 2.6.32.12
> >- patch-2.6.32.9-lttng-0.198
> >- ltt-control-0.79-01022010
> >- lttv-0.12.30-02102010
> >
> >mm-trace.ko is loaded.
> >
> >ltt-armall output shows
> >....
> >Connecting /sys/kernel/debug/ltt/markers/mm/wait_on_page_start
> >Connecting /sys/kernel/debug/ltt/markers/mm/wait_on_page_end
> >Connecting /sys/kernel/debug/ltt/markers/mm/huge_page_free
> >Connecting /sys/kernel/debug/ltt/markers/mm/huge_page_alloc
> >Connecting /sys/kernel/debug/ltt/markers/mm/page_free
> >Connecting /sys/kernel/debug/ltt/markers/mm/page_alloc
> >Connecting /sys/kernel/debug/ltt/markers/mm/swap_in
> >Connecting /sys/kernel/debug/ltt/markers/mm/swap_out
> >Connecting /sys/kernel/debug/ltt/markers/mm/swap_file_close
> >Connecting /sys/kernel/debug/ltt/markers/mm/swap_file_open
> >Connecting /sys/kernel/debug/ltt/markers/mm/add_to_page_cache
> >Connecting /sys/kernel/debug/ltt/markers/mm/remove_from_page_cache
> >...
> >
> >These are the steps to recreate the problem:
> >% lttctl -C -w /tmp/trace4 trace4
> >% # ** run a program that does a lot of malloc and free
> >% lttctl -D trace4
> >
> ># even mm.page_alloc is **not** showing in the trace
> >% lttv -m textDump --fatal -e event.name=mm.page_alloc -t /tmp/trace4
> >Trace set contains 1 traces
> >
> >End trace set
> >
> ># even mm.page_free is showing in the trace.
> >% lttv -m textDump --process_stats -e event.name=mm.page_free -t
> >/tmp/trace4
> >Trace set contains 1 traces
> >...
> >mm.page_free: 7334.057610863 (/tmp/trace4/mm_1), 6200, 6200, ./ltt_alloc, ,
> >4962, 0x0, SYSCALL { pfn = 487653, order = 0 }
> >mm.page_free: 7334.057612915 (/tmp/trace4/mm_1), 6200, 6200, ./ltt_alloc, ,
> >4962, 0x0, SYSCALL { pfn = 510031, order = 0 }
> >mm.page_free: 7334.057613190 (/tmp/trace4/mm_1), 6200, 6200, ./ltt_alloc, ,
> >4962, 0x0, SYSCALL { pfn = 510030, order = 0 }
> >...
> >
> >Please help look at this problem.
>
> Dany and I discussed this a bit today.
>
> It seems that the trace_page_alloc tracepoint is only placed in
> __alloc_pages_slowpath, which is only called under memory reclaim conditions
> from what I can tell. The placement of trace_page_free seems spread to more
> areas in the page free paths, so it gets picked up more broadly and shows up
> in the trace. Should the trace_page_alloc point be moved up to the
> __alloc_pages_nodemask function or some other higher level allocation function?
>
> Confusing the issue, or me at least, is that there is a trace_mm_page_alloc
> call in the more general __alloc_pages_nodemask. However, that call doesn't
> seem to be an LTTng tracepoint so it doesn't register LTTng events in the
> traces we see. Is that perhaps an FTrace tracepoint? There are other
> functions in the mm/page_alloc.c file like this as well, such as
> trace_mm_pagevec_free, and trace_mm_page_free_direct. None of those generate
> anything in the LTTng output either.
>
> All of that is still true with the lttng-0.216 branch from what I can tell.
The latest LTTng have not been updated to use the mainline tracepoints.
We need to create probes in ltt/probes/ for that. Indeed, for memory
management, it would be good to replace the current LTTng tracepoints
with the more complete mainline set.
Note that the LTTng probes will probably vanish in a few release, being
replaced by probes automatically generated by TRACE_EVENT().
Thanks,
Mathieu
>
> josh
>
> _______________________________________________
> ltt-dev mailing list
> ltt-dev at lists.casi.polymtl.ca
> http://lists.casi.polymtl.ca/cgi-bin/mailman/listinfo/ltt-dev
>
--
Mathieu Desnoyers
Operating System Efficiency R&D Consultant
EfficiOS Inc.
http://www.efficios.com
prev parent reply other threads:[~2010-06-19 15:47 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-06-14 17:16 Dany Madden
2010-06-16 18:01 ` Josh Boyer
2010-06-19 15:47 ` Mathieu Desnoyers [this message]
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100619154744.GA22882@Krystal \
--to=compudj@krystal.dyndns.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox