From: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
To: Thomas Gleixner <tglx@linutronix.de>
Cc: Zhaolei <zhaolei@cn.fujitsu.com>,
mingo@elte.hu, LKML <linux-kernel@vger.kernel.org>,
kosaki.motohiro@jp.fujitsu.com,
Steven Rostedt <rostedt@goodmis.org>,
fweisbec@gmail.com
Subject: Re: [PATCH 1/3] ftrace: add tracepoint for timer
Date: Wed, 10 Jun 2009 17:42:30 +0800 [thread overview]
Message-ID: <4A2F8006.506@cn.fujitsu.com> (raw)
In-Reply-To: <alpine.LFD.2.00.0906041017220.3419@localhost.localdomain>
Hi Thomas:
Sorry for the delayed reply.
> Please stop this handwaving about potential use cases. I still have
> not seen a single technical argument which explains the benefit of
> those extra trace points. If we follow your "maybe its needed" logic
> then we have to add yet another dozen of tracepoints into the same
> functions to gather all possible states which might be there.
>
> Tracing is important but it needs to be done unintrusive to the code
> and you have to apply common sense which information is really
> valuable and necessary. Gathering random crap just because it might be
> necessary at some point is useless.
>
I see your point, and I agree with you on this.
> Get your gear together, sit down and think hard about which
> information a tracer or a probe needs to have to give us a useful
> insight into a particular object or function.
>
> As long as there is no technical convincing argument that the gathered
> information is really useful I'm not going to apply any of those
> patches to the code I maintain.
>
Those tracepoints are wanted and useful:
1) We can detect a timer's delay if jiffies info is added, like this:
XXX: timer_start: timer=e0b374e0 func=test_timerfuc expires=4294941565
XXX: timer_expire: timer=e0b374e0 func=test_timerfuc jiffies=4294941567
We expect the timer expires at 4294941565, actually the timer expires at
4294941567, so it is delayed by 2 jiffies.
2) We can monitor the lifecycle and behaviors of a timer, for example, when
monitoring dirty writeback timer, I found reading /proc/sys/vm/dirty_writeback_centisecs
will reset the timer:
pdflush-244 [000] 0.554131: timer_start: timer=c077ef20 func=wb_timer_fn expires=2757949
<idle>-0 [000] 5.544769: timer_expire: timer=c077ef20 func=wb_timer_fn
<idle>-0 [000] 5.544770: timer_cancel: timer=c077ef20 func=wb_timer_fn
pdflush-244 [000] 5.544807: timer_start: timer=c077ef20 func=wb_timer_fn expires=2762949
cat-2326 [000] 5.618852: timer_cancel: timer=c077ef20 func=wb_timer_fn
cat-2326 [000] 6.618858: timer_start: timer=c077ef20 func=wb_timer_fn expires=2764025
3) We are developing "flight-record" using crash. It can read out the ring
buffer from the dump file, and let us know what was happening before
kernel panic, so we may find the cause of the panic. This requires
well-defined tracepoints in different kernel subsystems, especially some
core subsystems, timer is surely one of them.
I'll revise those patches according to your suggestions.
Thanks,
Xiao Guangrong
> Thanks,
>
> tglx
>
>
next prev parent reply other threads:[~2009-06-10 9:44 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-22 9:53 [PATCH 1/3] ftrace: add tracepoint for timer Xiao Guangrong
2009-05-26 21:40 ` Thomas Gleixner
2009-05-27 7:36 ` Xiao Guangrong
2009-05-27 10:10 ` Thomas Gleixner
2009-05-29 2:00 ` Zhaolei
2009-05-29 9:55 ` Thomas Gleixner
2009-06-01 9:08 ` Zhaolei
2009-06-03 2:52 ` Xiao Guangrong
2009-06-03 16:39 ` Thomas Gleixner
2009-06-04 5:38 ` Xiao Guangrong
2009-06-04 8:44 ` Thomas Gleixner
2009-06-10 9:42 ` Xiao Guangrong [this message]
2009-06-10 10:58 ` Thomas Gleixner
2009-06-03 2:50 ` Xiao Guangrong
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=4A2F8006.506@cn.fujitsu.com \
--to=xiaoguangrong@cn.fujitsu.com \
--cc=fweisbec@gmail.com \
--cc=kosaki.motohiro@jp.fujitsu.com \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=rostedt@goodmis.org \
--cc=tglx@linutronix.de \
--cc=zhaolei@cn.fujitsu.com \
/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