All of lore.kernel.org
 help / color / mirror / Atom feed
From: Xiao Guangrong <xiaoguangrong@cn.fujitsu.com>
To: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
Cc: linux-kernel@vger.kernel.org, mingo@elte.hu, fweisbec@gmail.com,
	rostedt@goodmis.org, zhaolei@cn.fujitsu.com,
	laijs@cn.fujitsu.com, Li Zefan <lizf@cn.fujitsu.com>
Subject: Re: [PATCH v3] ftrace: add a tracepoint for	__raise_softirq_irqoff()
Date: Mon, 11 May 2009 15:28:51 +0800	[thread overview]
Message-ID: <4A07D3B3.10605@cn.fujitsu.com> (raw)
In-Reply-To: <20090505161604.GA15524@Krystal>



Mathieu Desnoyers wrote:
> * Xiao Guangrong (xiaoguangrong@cn.fujitsu.com) wrote:
>> From: Mathieu Desnoyers <mathieu.desnoyers@polymtl.ca>
>>

>> +#ifdef CONFIG_TRACEPOINTS
>> +extern void __raise_softirq_irqoff(unsigned int nr);
>> +#else
>>  #define __raise_softirq_irqoff(nr) do { or_softirq_pending(1UL << (nr)); } while (0)
> 
> Can you put the 
> 	trace_irq_softirq_raise(nr);
> 
> directly in the define rather than adding this weird CONFIG_TRACEPOINTS?
> (and change the define for a static inline), something like :
> 
> static inline void __raise_softirq_irqoff(unsigned int nr)
> {
> 	trace_irq_softirq_raise(nr);
> 	or_softirq_pending(1UL << (nr);
> }
> 
> This would ensure we don't add a function call on the
> __raise_softirq_irqoff() fast-path.
> 

We did this in v2, and we think it is better for same reason.
But ...

> Beware of circular include dependencies though. The tracepoints are
> meant not to have this kind of problems (I try to keep the dependencies
> very minimalistic), but I wonder if Steven's TRACE_EVENT is now ok on
> this aspect.
> 

We encount this type of problem in v2.
So we move to this version(v3).

> If TRACE_EVENT happens to pose problems with circular header
> dependencies, then try moving to the DECLARE_TRACE/DEFINE_TRACE scheme
> which has been more thoroughly tested as a first step.
> 

IMHO, TRACE_EVENT framework is better for its more generic as ingo said,
and it also provide ftrace support which means user can view tracepoint
information from /debug/tracing/events.

Although this TRACE_EVENT happens to expose problems with circular header
dependencies, we should not refuse using TRACE_EVENT, instead we should
try to fix it for the whole TRACE_EVENT facility later.

Thanks

> Mathieu
> 

  reply	other threads:[~2009-05-11  7:28 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-05  6:41 [PATCH v3] ftrace: add a tracepoint for __raise_softirq_irqoff() Xiao Guangrong
2009-05-05  6:53 ` Li Zefan
2009-05-07  0:57   ` Xiao Guangrong
2009-05-05 16:16 ` Mathieu Desnoyers
2009-05-11  7:28   ` Xiao Guangrong [this message]
2009-05-11 13:40     ` Mathieu Desnoyers
2009-05-11 14:09       ` Steven Rostedt
2009-05-11 14:27         ` Mathieu Desnoyers
2009-05-11 14:53           ` Steven Rostedt
2009-05-11 15:13             ` Mathieu Desnoyers
2009-05-12  9:50               ` Xiao Guangrong
2009-05-12 13:14                 ` Mathieu Desnoyers
2009-05-14 10:53                 ` [PATCH v4] " Xiao Guangrong
2009-05-14 12:40                   ` Mathieu Desnoyers
2009-05-14 13:26                     ` Steven Rostedt
2009-05-14 13:51                       ` Mathieu Desnoyers
2009-05-15  1:53                       ` Xiao Guangrong
2009-05-18  3:06                         ` Zhaolei
2009-05-19  8:24                           ` Ingo Molnar
2009-05-21  5:39                             ` Zhaolei
2009-06-12  2:36                             ` Lai Jiangshan
2009-06-12  9:51                               ` [PATCH RFC] softirq: fix ksoftirq starved Lai Jiangshan
2009-06-17 14:53                                 ` Ingo Molnar
2009-06-18  3:19                                   ` Lai Jiangshan
2009-06-18  8:22                                     ` Peter Zijlstra
2009-06-20 15:48                                     ` Ingo Molnar
2009-07-03  9:35                             ` [PATCH v4] ftrace: add a tracepoint for __raise_softirq_irqoff() Lai Jiangshan
2009-07-03  9:44                               ` Ingo Molnar
2009-07-09 12:58                                 ` Lai Jiangshan
2009-05-14  2:44       ` [PATCH v3] " Lai Jiangshan
2009-05-14  3:50         ` Mathieu Desnoyers
2009-05-14  6:06           ` Lai Jiangshan
2009-05-14  8:05             ` Xiao Guangrong
2009-05-14 12:36             ` Mathieu Desnoyers
2009-05-14 13:25               ` Steven Rostedt
2009-05-06 13:49 ` Jason Baron
2009-05-07  1:16   ` 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=4A07D3B3.10605@cn.fujitsu.com \
    --to=xiaoguangrong@cn.fujitsu.com \
    --cc=fweisbec@gmail.com \
    --cc=laijs@cn.fujitsu.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=lizf@cn.fujitsu.com \
    --cc=mathieu.desnoyers@polymtl.ca \
    --cc=mingo@elte.hu \
    --cc=rostedt@goodmis.org \
    --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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.