[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20160225143406.GJ21932@lst.de>
Date: Thu, 25 Feb 2016 15:34:06 +0100
From: Torsten Duwe <duwe@....de>
To: Balbir Singh <bsingharora@...il.com>
Cc: Michael Ellerman <mpe@...erman.id.au>, linuxppc-dev@...abs.org,
linux-kernel@...r.kernel.org, rostedt@...dmis.org,
kamalesh@...ux.vnet.ibm.com, pmladek@...e.com, jeyu@...hat.com,
jkosina@...e.cz, live-patching@...r.kernel.org, mbenes@...e.cz
Subject: Re: [PATCH 10/12] powerpc/ftrace: FTRACE_WITH_REGS configuration
variables
On Thu, Feb 25, 2016 at 12:11:33PM +1100, Balbir Singh wrote:
> On 25/02/16 01:28, Michael Ellerman wrote:
> >
> > diff --git a/arch/powerpc/gcc-mprofile-kernel-notrace.sh b/arch/powerpc/gcc-mprofile-kernel-notrace.sh
> > new file mode 100755
> > index 000000000000..68d6482d56ab
> > --- /dev/null
> > +++ b/arch/powerpc/gcc-mprofile-kernel-notrace.sh
> > @@ -0,0 +1,33 @@
> > +#!/bin/sh
> > +# Test whether the compile option -mprofile-kernel
> > +# generates profiling code ( = a call to mcount), and
> > +# whether a function without any global references sets
> > +# the TOC pointer properly at the beginning, and
Remove the above two lines, for completeness,
> > +# whether the "notrace" function attribute successfully
> > +# suppresses the _mcount call.
> > +
> > +echo "int func() { return 0; }" | \
> > + $* -S -x c -O2 -p -mprofile-kernel - -o - 2> /dev/null | \
> > + grep -q "mcount"
> > +
> > +trace_result=$?
> > +
> > +echo "int func() { return 0; }" | \
> > + $* -S -x c -O2 -p -mprofile-kernel - -o - 2> /dev/null | \
> > + sed -n -e '/func:/,/bl _mcount/p' | grep -q TOC
> > +
> > +leaf_toc_result=$?
> > +
> We should remove this bit, we don't need a TOC for leaf procedures anymore
Exactly. I thought it was a bug when I wrote this test, Michael insisted
it was a feature :-)
> > +/bin/echo -e "#include <linux/compiler.h>\nnotrace int func() { return 0; }" | \
> > + $* -S -x c -O2 -p -mprofile-kernel - -o - 2> /dev/null | \
> > + grep -q "mcount"
> > +
> > +notrace_result=$?
> > +
> > +if [ "$trace_result" -eq "0" -a \
> > + "$leaf_toc_result" -eq "0" -a \
In particular, remove this ^ line.
> > + "$notrace_result" -eq "1" ]; then
> > + echo y
> > +else
> > + echo n
> > +fi
That version would have made it into my v9.
Signed-off-by: Torsten Duwe <duwe@...e.de>
Torsten
Powered by blists - more mailing lists