public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: tip-bot for Alexander Shishkin <tipbot@zytor.com>
To: linux-tip-commits@vger.kernel.org
Cc: peterz@infradead.org, linux-kernel@vger.kernel.org,
	torvalds@linux-foundation.org, hpa@zytor.com, paulus@samba.org,
	alexander.shishkin@linux.intel.com, tglx@linutronix.de,
	mingo@kernel.org
Subject: [tip:perf/core] perf/x86/intel/pt: Kill pt_is_running()
Date: Wed, 27 May 2015 03:08:36 -0700	[thread overview]
Message-ID: <tip-0a487aad2dfd088bcbbe1766944280b40ff969a5@git.kernel.org> (raw)
In-Reply-To: <1429622177-22843-6-git-send-email-alexander.shishkin@linux.intel.com>

Commit-ID:  0a487aad2dfd088bcbbe1766944280b40ff969a5
Gitweb:     http://git.kernel.org/tip/0a487aad2dfd088bcbbe1766944280b40ff969a5
Author:     Alexander Shishkin <alexander.shishkin@linux.intel.com>
AuthorDate: Tue, 21 Apr 2015 16:16:17 +0300
Committer:  Ingo Molnar <mingo@kernel.org>
CommitDate: Wed, 27 May 2015 09:17:48 +0200

perf/x86/intel/pt: Kill pt_is_running()

Initially, we were trying to guard against scenarios where somebody
attaches to the system with a hardware debugger while PT is enabled
from software and pt_is_running() tries to make sure we handle this
better, but the truth is, there is still a race window no matter what
and people with hardware debuggers should really know what they are
doing anyway.

In other words, there is no point in keeping this one around, and
it's one RDMSR instructions fewer in the fast path.

The case when PT is enabled by the BIOS at boot time is handled
in the driver initialization path and doesn't use pt_is_running().

This patch gets rid of it.

Signed-off-by: Alexander Shishkin <alexander.shishkin@linux.intel.com>
Signed-off-by: Peter Zijlstra (Intel) <peterz@infradead.org>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: acme@infradead.org
Cc: adrian.hunter@intel.com
Cc: hpa@zytor.com
Link: http://lkml.kernel.org/r/1429622177-22843-6-git-send-email-alexander.shishkin@linux.intel.com
Signed-off-by: Ingo Molnar <mingo@kernel.org>
---
 arch/x86/kernel/cpu/perf_event_intel_pt.c | 11 +----------
 1 file changed, 1 insertion(+), 10 deletions(-)

diff --git a/arch/x86/kernel/cpu/perf_event_intel_pt.c b/arch/x86/kernel/cpu/perf_event_intel_pt.c
index 40ba5e4..a2d4071 100644
--- a/arch/x86/kernel/cpu/perf_event_intel_pt.c
+++ b/arch/x86/kernel/cpu/perf_event_intel_pt.c
@@ -187,15 +187,6 @@ static bool pt_event_valid(struct perf_event *event)
  * These all are cpu affine and operate on a local PT
  */
 
-static bool pt_is_running(void)
-{
-	u64 ctl;
-
-	rdmsrl(MSR_IA32_RTIT_CTL, ctl);
-
-	return !!(ctl & RTIT_CTL_TRACEEN);
-}
-
 static void pt_config(struct perf_event *event)
 {
 	u64 reg;
@@ -933,7 +924,7 @@ static void pt_event_start(struct perf_event *event, int mode)
 	struct pt *pt = this_cpu_ptr(&pt_ctx);
 	struct pt_buffer *buf = perf_get_aux(&pt->handle);
 
-	if (pt_is_running() || !buf || pt_buffer_is_full(buf, pt)) {
+	if (!buf || pt_buffer_is_full(buf, pt)) {
 		event->hw.state = PERF_HES_STOPPED;
 		return;
 	}

      reply	other threads:[~2015-05-27 10:09 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-04-21 13:16 [PATCH 0/5] perf/x86/intel/pt: Driver fixes and cleanups Alexander Shishkin
2015-04-21 13:16 ` [PATCH 1/5] perf/x86/intel/pt: Kill an unused variable Alexander Shishkin
2015-05-27 10:07   ` [tip:perf/core] " tip-bot for Alexander Shishkin
2015-04-21 13:16 ` [PATCH 2/5] perf/x86/intel/pt: Untangle pt_buffer_reset_markers() Alexander Shishkin
2015-04-21 13:16 ` [PATCH 3/5] perf/x86/intel/pt: Document pt_buffer_reset_markers() Alexander Shishkin
2015-05-27 10:07   ` [tip:perf/core] " tip-bot for Alexander Shishkin
2015-04-21 13:16 ` [PATCH 4/5] perf/x86/intel/pt: Document pt_buffer_reset_offsets() Alexander Shishkin
2015-05-27 10:08   ` [tip:perf/core] " tip-bot for Alexander Shishkin
2015-04-21 13:16 ` [PATCH 5/5] perf/x86/intel/pt: Kill pt_is_running() Alexander Shishkin
2015-05-27 10:08   ` tip-bot for Alexander Shishkin [this message]

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=tip-0a487aad2dfd088bcbbe1766944280b40ff969a5@git.kernel.org \
    --to=tipbot@zytor.com \
    --cc=alexander.shishkin@linux.intel.com \
    --cc=hpa@zytor.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-tip-commits@vger.kernel.org \
    --cc=mingo@kernel.org \
    --cc=paulus@samba.org \
    --cc=peterz@infradead.org \
    --cc=tglx@linutronix.de \
    --cc=torvalds@linux-foundation.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox