mirror of https://lore.kernel.org/lkml/
 help / color / mirror / Atom feed
* TRACE_BRANCH_PROFILING breaks gcc warnings
@ 2009-04-14 22:28 Johannes Berg
  2009-04-14 22:31 ` Steven Rostedt
  0 siblings, 1 reply; 5+ messages in thread
From: Johannes Berg @ 2009-04-14 22:28 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: LKML, Steven Rostedt

[-- Attachment #1: Type: text/plain, Size: 277 bytes --]

With TRACE_BRANCH_PROFILING enabled you get "dummy may be used
uninitialised" with code like the following (and gcc 4.3.3):

void *dummy, *c;

if (a && (dummy = b()))
	c = dummy;

Therefore, allyesconfig has become useless for looking at warnings.

:(

johannes


[-- Attachment #2: This is a digitally signed message part --]
[-- Type: application/pgp-signature, Size: 836 bytes --]

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: TRACE_BRANCH_PROFILING breaks gcc warnings
  2009-04-14 22:28 TRACE_BRANCH_PROFILING breaks gcc warnings Johannes Berg
@ 2009-04-14 22:31 ` Steven Rostedt
  2009-04-15  7:37   ` Ingo Molnar
  0 siblings, 1 reply; 5+ messages in thread
From: Steven Rostedt @ 2009-04-14 22:31 UTC (permalink / raw)
  To: Johannes Berg; +Cc: Ingo Molnar, LKML


On Wed, 2009-04-15 at 00:28 +0200, Johannes Berg wrote:
> With TRACE_BRANCH_PROFILING enabled you get "dummy may be used
> uninitialised" with code like the following (and gcc 4.3.3):
> 
> void *dummy, *c;
> 
> if (a && (dummy = b()))
> 	c = dummy;
> 
> Therefore, allyesconfig has become useless for looking at warnings.
> 
> :(


This has been mentioned before, and I've asked about sending a patch
that would prevent TRACE_BRANCH_PROFILING from being selected with an
allyesconfig.

It is easy to do. I could make it a selection and not a boolean and it
will not select it as default, even for allyes/modconfig

Thoughts?

-- Steve



^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: TRACE_BRANCH_PROFILING breaks gcc warnings
  2009-04-14 22:31 ` Steven Rostedt
@ 2009-04-15  7:37   ` Ingo Molnar
  2009-04-15  7:46     ` Sam Ravnborg
  0 siblings, 1 reply; 5+ messages in thread
From: Ingo Molnar @ 2009-04-15  7:37 UTC (permalink / raw)
  To: Steven Rostedt; +Cc: Johannes Berg, Ingo Molnar, LKML


* Steven Rostedt <srostedt@redhat.com> wrote:

> 
> On Wed, 2009-04-15 at 00:28 +0200, Johannes Berg wrote:
> > With TRACE_BRANCH_PROFILING enabled you get "dummy may be used
> > uninitialised" with code like the following (and gcc 4.3.3):
> > 
> > void *dummy, *c;
> > 
> > if (a && (dummy = b()))
> > 	c = dummy;
> > 
> > Therefore, allyesconfig has become useless for looking at warnings.

There's an easy solution for that problem btw: you just have to 
disable the branch tracer after allyesconfig. [ Or fix the compiler. 
Or both ;-) ]

I'm also curious, how often do you do allyesconfig builds? I've 
never seen you report one before. Have you started doing them 
recently? How much time does it take on your system?

> > :(
> 
> This has been mentioned before, and I've asked about sending a 
> patch that would prevent TRACE_BRANCH_PROFILING from being 
> selected with an allyesconfig.
> 
> It is easy to do. I could make it a selection and not a boolean 
> and it will not select it as default, even for allyes/modconfig
> 
> Thoughts?

That's a good idea - please send a patch.

	Ingo

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: TRACE_BRANCH_PROFILING breaks gcc warnings
  2009-04-15  7:37   ` Ingo Molnar
@ 2009-04-15  7:46     ` Sam Ravnborg
  2009-04-15  8:12       ` Ingo Molnar
  0 siblings, 1 reply; 5+ messages in thread
From: Sam Ravnborg @ 2009-04-15  7:46 UTC (permalink / raw)
  To: Ingo Molnar; +Cc: Steven Rostedt, Johannes Berg, Ingo Molnar, LKML

> > 
> > This has been mentioned before, and I've asked about sending a 
> > patch that would prevent TRACE_BRANCH_PROFILING from being 
> > selected with an allyesconfig.
> > 
> > It is easy to do. I could make it a selection and not a boolean 
> > and it will not select it as default, even for allyes/modconfig

We should have a symbol that is only set for allyesconfig builds.

Then we could do something like:

config TRACE_BRANCH_PROFILING
	depends on !ALLYESCONFIG

The advantage is that it is obvious why we have defiend
it like this rather than some inverse symbols.

I looked at generating such symbol in kconfig long time
ago but never finished it.

	Sam

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: TRACE_BRANCH_PROFILING breaks gcc warnings
  2009-04-15  7:46     ` Sam Ravnborg
@ 2009-04-15  8:12       ` Ingo Molnar
  0 siblings, 0 replies; 5+ messages in thread
From: Ingo Molnar @ 2009-04-15  8:12 UTC (permalink / raw)
  To: Sam Ravnborg; +Cc: Steven Rostedt, Johannes Berg, Ingo Molnar, LKML


* Sam Ravnborg <sam@ravnborg.org> wrote:

> > > This has been mentioned before, and I've asked about sending a 
> > > patch that would prevent TRACE_BRANCH_PROFILING from being 
> > > selected with an allyesconfig.
> > > 
> > > It is easy to do. I could make it a selection and not a 
> > > boolean and it will not select it as default, even for 
> > > allyes/modconfig
> 
> We should have a symbol that is only set for allyesconfig builds.
> 
> Then we could do something like:
> 
> config TRACE_BRANCH_PROFILING
> 	depends on !ALLYESCONFIG
> 
> The advantage is that it is obvious why we have defiend it like 
> this rather than some inverse symbols.
> 
> I looked at generating such symbol in kconfig long time ago but 
> never finished it.

ah, nice idea! Should be fairly simple to do, right?

The other option is to disable/remove the branch profiler 
altogether.

	Ingo

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2009-04-15  8:13 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2009-04-14 22:28 TRACE_BRANCH_PROFILING breaks gcc warnings Johannes Berg
2009-04-14 22:31 ` Steven Rostedt
2009-04-15  7:37   ` Ingo Molnar
2009-04-15  7:46     ` Sam Ravnborg
2009-04-15  8:12       ` Ingo Molnar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox

Powered by JetHome