Re: ftrace breaks sparc64 build

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 6 Jan 2009, Heiko Carstens wrote:

> On Mon, Jan 05, 2009 at 05:14:22PM -0500, Steven Rostedt wrote:
> > 
> > On Mon, 5 Jan 2009, Sam Ravnborg wrote:
> > 
> > > > Is this all sparc cross compiler?  I'm trying to reproduce it on x86 with 
> > > > no avail :-(
> > > > 
> > > > I would like to test other ways to change the macro, but to do so, I need 
> > > > to get a compiler that will produce the warnings that you see. What 
> > > > version of gcc are you using?
> > > 
> > > I used crosstool to build a 3.4.5 gcc:
> > 
> > Hmm, that's a pretty old compiler. I wonder if it wouldn't just help
> > if we just make the branch tracer dependent on the compiler used. That is.
> > 
> > #if defined(CONFIG_PROFILE_ALL_BRANCHES) && (__GNUC__ >= 4)
> > #define if(cond) ...
> > 
> > Or something :-/
> 
> FWIW, on s390 with gcc 4.3.2 and an allyesconfig I get these:
> 
>   CC      arch/s390/mm/extmem.o
> arch/s390/mm/extmem.c: In function 'segment_modify_shared':
> arch/s390/mm/extmem.c:572: warning: 'end_addr' may be used uninitialized in this function
> arch/s390/mm/extmem.c:572: warning: 'start_addr' may be used uninitialized in this function
> arch/s390/mm/extmem.c: In function 'query_segment_type':
> arch/s390/mm/extmem.c:259: warning: 'vmrc' may be used uninitialized in this function
> 
> Switching off PROFILE_ALL_BRANCHES makes the warnings go away again.

Now that is really interesting. Because end_addr and start_addr are 
initialized via functions:

	if (x)
		init_me(a, &y);
	else
		init_me(b, &y);

Which actually does not make sense why turning off PROFILE_ALL_BRANCHES 
would affect this :-/

-- Steve

--
To unsubscribe from this list: send the line "unsubscribe sparclinux" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Kernel Development]     [DCCP]     [Linux ARM Development]     [Linux]     [Photo]     [Yosemite Help]     [Linux ARM Kernel]     [Linux SCSI]     [Linux x86_64]     [Linux Hams]

  Powered by Linux