From mboxrd@z Thu Jan 1 00:00:00 1970 From: James Clark Subject: [PATCH v2 6/7] perf tools: arm-spe: fix record hang after being terminated Date: Thu, 23 Jan 2020 16:07:33 +0000 Message-ID: <20200123160734.3775-7-james.clark@arm.com> References: <20200123160734.3775-1-james.clark@arm.com> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Return-path: In-Reply-To: <20200123160734.3775-1-james.clark@arm.com> Sender: linux-kernel-owner@vger.kernel.org To: linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org Cc: suzuki.poulose@arm.com, gengdongjiu@huawei.com, wxf.wang@hisilicon.com, liwei391@huawei.com, liuqi115@hisilicon.com, huawei.libin@huawei.com, nd@arm.com, linux-perf-users@vger.kernel.org, James Clark , Will Deacon , Mark Rutland , Peter Zijlstra , Ingo Molnar , Arnaldo Carvalho de Melo , Alexander Shishkin , Jiri Olsa , Tan Xiaojun , Al Grant , Namhyung Kim List-Id: linux-perf-users.vger.kernel.org From: Wei Li If the spe event is terminated, we don't enable it again here. Signed-off-by: Wei Li Tested-by: Qi Liu Signed-off-by: James Clark Cc: Will Deacon Cc: Mark Rutland Cc: Peter Zijlstra Cc: Ingo Molnar Cc: Arnaldo Carvalho de Melo Cc: Alexander Shishkin Cc: Jiri Olsa Cc: Tan Xiaojun Cc: Al Grant Cc: Namhyung Kim --- tools/perf/arch/arm64/util/arm-spe.c | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/tools/perf/arch/arm64/util/arm-spe.c b/tools/perf/arch/arm64/util/arm-spe.c index eba6541ec0f1..629badda724d 100644 --- a/tools/perf/arch/arm64/util/arm-spe.c +++ b/tools/perf/arch/arm64/util/arm-spe.c @@ -165,9 +165,13 @@ static int arm_spe_read_finish(struct auxtrace_record *itr, int idx) struct evsel *evsel; evlist__for_each_entry(sper->evlist, evsel) { - if (evsel->core.attr.type == sper->arm_spe_pmu->type) - return perf_evlist__enable_event_idx(sper->evlist, - evsel, idx); + if (evsel->core.attr.type == sper->arm_spe_pmu->type) { + if (evsel->terminated) + return 0; + else + return perf_evlist__enable_event_idx( + sper->evlist, evsel, idx); + } } return -EINVAL; } -- 2.25.0