All of lore.kernel.org
 help / color / mirror / Atom feed
From: Anton Blanchard <anton@samba.org>
To: Segher Boessenkool <segher@kernel.crashing.org>
Cc: Torsten Duwe <duwe@lst.de>,
	live-patching@vger.kernel.org, linuxppc-dev@lists.ozlabs.org
Subject: Re: -mprofile-kernel vs. notrace in ppc64(le) Linux kernels
Date: Sun, 27 Sep 2015 09:03:48 +1000	[thread overview]
Message-ID: <20150927090348.3c725ab4@kryten> (raw)
In-Reply-To: <20150926145243.GA14958@gate.crashing.org>

Hi,

> On Sat, Sep 26, 2015 at 04:30:08PM +0200, Torsten Duwe wrote:
> > As I mentioned earlier this year, it's a bad idea to call _mcount
> > from MMU helper functions (e.g. hash_page...), when the
> > profiling/tracing/ live-patching/whatever framewok might in turn
> > cause another such fault. Jikos suggested to use fine-grained
> > control of these functions with the "notrace" keyword in the Linux
> > kernel. It is mapped to GCC's (4.8, FWIW)
> > __attribute__((no_instrument_function)), which, to my surprise,
> > works for -p and -pg nicely, but does not affect -mprofile-kernel
> > at all!
> 
> That is surprising; please file a GCC bug.

This sounds like the issue below, fixed by Pat.

Anton
--

commit ccebc2aad32917f3371ae6d5774f689c86ace0b2
Author: pthaugen <pthaugen@138bc75d-0d04-0410-961f-82ee72b054a4>
Date:   Wed Jan 15 23:48:12 2014 +0000

    	* config/rs6000/rs6000.c (rs6000_output_function_prologue): Check if
    	current procedure should be profiled.
    
    
    
    git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@206650 138bc75d-0d04-0410-961f-82ee72b054a4

diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index 2781bd0..0788036 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2014-01-15  Pat Haugen  <pthaugen@us.ibm.com>
+
+	* config/rs6000/rs6000.c (rs6000_output_function_prologue): Check if
+	current procedure should be profiled.
+
 2014-01-15  Andrew Pinski  <apinski@cavium.com>
 
 	* config/aarch64/aarch64.c (aarch64_register_move_cost): Correct cost
diff --git a/gcc/config/rs6000/rs6000.c b/gcc/config/rs6000/rs6000.c
index 289b52c..a479219 100644
--- a/gcc/config/rs6000/rs6000.c
+++ b/gcc/config/rs6000/rs6000.c
@@ -23198,7 +23198,7 @@ rs6000_output_function_prologue (FILE *file,
   /* Output -mprofile-kernel code.  This needs to be done here instead of
      in output_function_profile since it must go after the ELFv2 ABI
      local entry point.  */
-  if (TARGET_PROFILE_KERNEL)
+  if (TARGET_PROFILE_KERNEL && crtl->profile)
     {
       gcc_assert (DEFAULT_ABI == ABI_AIX || DEFAULT_ABI == ABI_ELFv2);
       gcc_assert (!TARGET_32BIT);

  reply	other threads:[~2015-09-26 23:04 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-26 14:30 -mprofile-kernel vs. notrace in ppc64(le) Linux kernels Torsten Duwe
2015-09-26 14:52 ` Segher Boessenkool
2015-09-26 23:03   ` Anton Blanchard [this message]
2015-09-27 11:06     ` Torsten Duwe
2015-09-28  0:08 ` Stewart Smith

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=20150927090348.3c725ab4@kryten \
    --to=anton@samba.org \
    --cc=duwe@lst.de \
    --cc=linuxppc-dev@lists.ozlabs.org \
    --cc=live-patching@vger.kernel.org \
    --cc=segher@kernel.crashing.org \
    /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.