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

Re: About ARCH=sparc and what to pass to recordmcount.pl



On Mon, 2011-08-15 at 11:33 -0400, Steven Rostedt wrote:
> On Mon, 2011-08-15 at 17:21 +0200, Uwe Kleine-König wrote:
> > Hello,
> > 
> > when I enable CONFIG_FUNCTION_TRACER and CONFIG_DYNAMIC_FTRACE for the
> > Debian kernel the build fails with:
> > 
> >   CC      init/do_mounts_initrd.o
> > Arch sparc is not supported with CONFIG_FTRACE_MCOUNT_RECORD at .../scripts/recordmcount.pl line 368.
> > 
> > This happens because the kernel package build scripts call
> > 
> > 	make ARCH=sparc
> > 
> > $(ARCH) is passed to scripts/recordmcount.pl and the latter only knows
> > about "sparc64".
> > 
> > There are several options to fix that:
> > 
> >  a) let the package pass ARCH=sparc64 instead of ARCH=sparc
> >     Then sparc would be the only architecture that doesn't pass the
> >     (Debian) arch here. I'm not sure there are other reasons to stick to
> >     ARCH=sparc. Bastian?
> >     It seems only recordmcount.pl chokes on that because Debian uses
> >     ARCH=sparc since at least 2.6.32, probably much longer.
> > 
> >  b) pass SRCARCH instead of ARCH to recordmcount.pl and do
> >     s/sparc64/sparc/ in recordmcount.pl.
> 
> b may break other archs.
> 
> > 
> >  c) do the following in recordmcount.pl:
> > 	if ($arch =~ /sparc(32|64)?/) {
> > 	    if ($bits == 64) {
> > 	        $arch = "sparc64";
> > 	    } else {
> > 	        $arch = "sparc"; # or "sparc32"?
> > 	    }
> > 	}
> 
> c is fine with me.
> 
> > 
> >     Something like that is already done for x86.
> >  
> > Personally I prefer b), but I'm not sure I see all the consequences.
> 
> It may break other archs. I rather not do a change that affects all
> archs. This is a sparc specific problem. The solution should only affect
> sparc. Which to me is option c.
> 

Actually, I think option d) is the best.

d) have sparc support recordmcount.c

-- Steve



Reply to: