From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754868AbdKAQoi (ORCPT ); Wed, 1 Nov 2017 12:44:38 -0400 Received: from mail.kernel.org ([198.145.29.99]:40296 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754518AbdKAQog (ORCPT ); Wed, 1 Nov 2017 12:44:36 -0400 DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 3110B21871 Authentication-Results: mail.kernel.org; dmarc=none (p=none dis=none) header.from=goodmis.org Authentication-Results: mail.kernel.org; spf=none smtp.mailfrom=rostedt@goodmis.org Date: Wed, 1 Nov 2017 12:44:33 -0400 From: Steven Rostedt To: Julien Thierry Cc: linux-arm-kernel@lists.infradead.org, takahiro.akashi@linaro.org, Will Deacon , Mark Rutland , Peter Zijlstra , Ingo Molnar , linux-kernel@vger.kernel.org Subject: Re: [PATCH 2/2] perf: Fix ftrace builtin when kernel doesn't have function_graph Message-ID: <20171101124433.1a6ed9c6@gandalf.local.home> In-Reply-To: <1509546824-46165-3-git-send-email-julien.thierry@arm.com> References: <1509546824-46165-1-git-send-email-julien.thierry@arm.com> <1509546824-46165-3-git-send-email-julien.thierry@arm.com> X-Mailer: Claws Mail 3.14.0 (GTK+ 2.24.31; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Wed, 1 Nov 2017 14:33:44 +0000 Julien Thierry wrote: > When linux is built without support for function graph tracer, the ftrace > builtin of perf will fail when trying to reset max_graph_depth because the > file does not exist. This prevents the use of function tracer from perf. > > Do not attempt to write this file when the tracer in use is not > function_graph. > > Signed-off-by: Julien Thierry > Cc: Will Deacon > Cc: Mark Rutland > Cc: Peter Zijlstra > Cc: Ingo Molnar > Cc: linux-kernel@vger.kernel.org > --- > tools/perf/builtin-ftrace.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/tools/perf/builtin-ftrace.c b/tools/perf/builtin-ftrace.c > index 25a42ac..48120f2 100644 > --- a/tools/perf/builtin-ftrace.c > +++ b/tools/perf/builtin-ftrace.c > @@ -130,7 +130,8 @@ static int reset_tracing_files(struct perf_ftrace *ftrace __maybe_unused) > if (reset_tracing_cpu() < 0) > return -1; > > - if (write_tracing_file("max_graph_depth", "0") < 0) > + if (!strcmp(ftrace->tracer, "function_graph") && > + write_tracing_file("max_graph_depth", "0") < 0) Hmm, instead of doing this, could we just do a stat on the file first. As with trace-cmd, I like to reset files like this even when not enabling function_graph tracer. -- Steve > return -1; > > reset_tracing_filters(); > -- > 1.9.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: rostedt@goodmis.org (Steven Rostedt) Date: Wed, 1 Nov 2017 12:44:33 -0400 Subject: [PATCH 2/2] perf: Fix ftrace builtin when kernel doesn't have function_graph In-Reply-To: <1509546824-46165-3-git-send-email-julien.thierry@arm.com> References: <1509546824-46165-1-git-send-email-julien.thierry@arm.com> <1509546824-46165-3-git-send-email-julien.thierry@arm.com> Message-ID: <20171101124433.1a6ed9c6@gandalf.local.home> To: linux-arm-kernel@lists.infradead.org List-Id: linux-arm-kernel.lists.infradead.org On Wed, 1 Nov 2017 14:33:44 +0000 Julien Thierry wrote: > When linux is built without support for function graph tracer, the ftrace > builtin of perf will fail when trying to reset max_graph_depth because the > file does not exist. This prevents the use of function tracer from perf. > > Do not attempt to write this file when the tracer in use is not > function_graph. > > Signed-off-by: Julien Thierry > Cc: Will Deacon > Cc: Mark Rutland > Cc: Peter Zijlstra > Cc: Ingo Molnar > Cc: linux-kernel at vger.kernel.org > --- > tools/perf/builtin-ftrace.c | 3 ++- > 1 file changed, 2 insertions(+), 1 deletion(-) > > diff --git a/tools/perf/builtin-ftrace.c b/tools/perf/builtin-ftrace.c > index 25a42ac..48120f2 100644 > --- a/tools/perf/builtin-ftrace.c > +++ b/tools/perf/builtin-ftrace.c > @@ -130,7 +130,8 @@ static int reset_tracing_files(struct perf_ftrace *ftrace __maybe_unused) > if (reset_tracing_cpu() < 0) > return -1; > > - if (write_tracing_file("max_graph_depth", "0") < 0) > + if (!strcmp(ftrace->tracer, "function_graph") && > + write_tracing_file("max_graph_depth", "0") < 0) Hmm, instead of doing this, could we just do a stat on the file first. As with trace-cmd, I like to reset files like this even when not enabling function_graph tracer. -- Steve > return -1; > > reset_tracing_filters(); > -- > 1.9.1