From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753872AbdBNNcI (ORCPT ); Tue, 14 Feb 2017 08:32:08 -0500 Received: from mga02.intel.com ([134.134.136.20]:18712 "EHLO mga02.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752898AbdBNNav (ORCPT ); Tue, 14 Feb 2017 08:30:51 -0500 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.35,161,1484035200"; d="scan'208";a="933726409" From: Alexander Shishkin To: Peter Zijlstra , Ingo Molnar Cc: linux-kernel@vger.kernel.org, vince@deater.net, eranian@google.com, Arnaldo Carvalho de Melo , Borislav Petkov , Thomas Gleixner , Alexander Shishkin Subject: [PATCH 1/2] perf/x86/intel/pt: Fail event scheduling on conflict with VMX Date: Tue, 14 Feb 2017 15:24:15 +0200 Message-Id: <20170214132416.26400-2-alexander.shishkin@linux.intel.com> X-Mailer: git-send-email 2.11.0 In-Reply-To: <20170214132416.26400-1-alexander.shishkin@linux.intel.com> References: <20170214132416.26400-1-alexander.shishkin@linux.intel.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org At the moment, if VMX operation prevents PT tracing, the PMU will silently return success to the event scheduling code, which will track its 'on' time, etc. Instead, report failure so that perf core knows this event is not actually on. Signed-off-by: Alexander Shishkin Reported-by: Andi Kleen Fixes: 1c5ac21a0e ("perf/x86/intel/pt: Don't die on VMXON") --- arch/x86/events/intel/pt.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/arch/x86/events/intel/pt.c b/arch/x86/events/intel/pt.c index d92a60ef08..9372fa4549 100644 --- a/arch/x86/events/intel/pt.c +++ b/arch/x86/events/intel/pt.c @@ -1335,7 +1335,7 @@ static void pt_event_start(struct perf_event *event, int mode) struct pt_buffer *buf; if (READ_ONCE(pt->vmx_on)) - return; + goto fail_stop; buf = perf_aux_output_begin(&pt->handle, event); if (!buf) -- 2.11.0