Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754601AbdCBRuX (ORCPT ); Thu, 2 Mar 2017 12:50:23 -0500 Received: from mail.kernel.org ([198.145.29.136]:34526 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752631AbdCBRuR (ORCPT ); Thu, 2 Mar 2017 12:50:17 -0500 Date: Thu, 2 Mar 2017 12:49:40 -0500 From: Steven Rostedt To: Todd Brandt Cc: linux-kernel@vger.kernel.org Subject: Re: ftrace_graph_filter not working correctly since v4.10 Message-ID: <20170302124940.19088e85@gandalf.local.home> In-Reply-To: <20170301224730.2af14888@grimm.local.home> References: <1488420091.7212.17.camel@linux.intel.com> <20170301222843.6ea73495@grimm.local.home> <20170301224730.2af14888@grimm.local.home> 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 Content-Length: 1264 Lines: 47 On Wed, 1 Mar 2017 22:47:30 -0500 Steven Rostedt wrote: > On Wed, 1 Mar 2017 22:28:43 -0500 > Steven Rostedt wrote: > > > > 4.10 is fine. It's what has been merged for 4.11 that's broken. I'm > > doing a bisect now to see what broke it. Yes, lots of commits touched > > that code recently. > > I found the bad commit. I'll have a patch for you to test tomorrow. > Can you test this patch please. -- Steve diff --git a/kernel/trace/ftrace.c b/kernel/trace/ftrace.c index 2d554a0..1b33a41 100644 --- a/kernel/trace/ftrace.c +++ b/kernel/trace/ftrace.c @@ -4403,10 +4403,9 @@ static void __init set_ftrace_early_graph(char *buf, int enable) char *func; struct ftrace_hash *hash; - if (enable) - hash = ftrace_graph_hash; - else - hash = ftrace_graph_notrace_hash; + hash = alloc_ftrace_hash(FTRACE_HASH_DEFAULT_BITS); + if (WARN_ON(!hash)) + return; while (buf) { func = strsep(&buf, ","); @@ -4416,6 +4415,11 @@ static void __init set_ftrace_early_graph(char *buf, int enable) printk(KERN_DEBUG "ftrace: function %s not " "traceable\n", func); } + + if (enable) + ftrace_graph_hash = hash; + else + ftrace_graph_notrace_hash = hash; } #endif /* CONFIG_FUNCTION_GRAPH_TRACER */