From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 1D024C433EF for ; Fri, 11 Feb 2022 20:40:12 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 7FE1A6B0078; Fri, 11 Feb 2022 15:40:11 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 7AE116B007B; Fri, 11 Feb 2022 15:40:11 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 676626B007D; Fri, 11 Feb 2022 15:40:11 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0094.hostedemail.com [216.40.44.94]) by kanga.kvack.org (Postfix) with ESMTP id 548BE6B0078 for ; Fri, 11 Feb 2022 15:40:11 -0500 (EST) Received: from smtpin28.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with ESMTP id 15A9A96F3D for ; Fri, 11 Feb 2022 20:40:11 +0000 (UTC) X-FDA: 79131666222.28.59E5F0F Received: from ams.source.kernel.org (ams.source.kernel.org [145.40.68.75]) by imf28.hostedemail.com (Postfix) with ESMTP id 70E31C0006 for ; Fri, 11 Feb 2022 20:40:10 +0000 (UTC) Received: from smtp.kernel.org (relay.kernel.org [52.25.139.140]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by ams.source.kernel.org (Postfix) with ESMTPS id 0805CB82CA7; Fri, 11 Feb 2022 20:40:09 +0000 (UTC) Received: by smtp.kernel.org (Postfix) with ESMTPSA id 57468C340ED; Fri, 11 Feb 2022 20:40:07 +0000 (UTC) Date: Fri, 11 Feb 2022 15:40:05 -0500 From: Steven Rostedt To: Christophe Leroy Cc: Ingo Molnar , linux-kernel@vger.kernel.org, linux-mm@kvack.org Subject: Re: [PATCH v2] tracing: uninline trace_trigger_soft_disabled() partly Message-ID: <20220211154005.01fd3c24@gandalf.local.home> In-Reply-To: <69ce0986a52d026d381d612801d978aa4f977460.1644563295.git.christophe.leroy@csgroup.eu> References: <69ce0986a52d026d381d612801d978aa4f977460.1644563295.git.christophe.leroy@csgroup.eu> X-Mailer: Claws Mail 3.17.8 (GTK+ 2.24.33; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-Rspamd-Queue-Id: 70E31C0006 X-Rspam-User: Authentication-Results: imf28.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf28.hostedemail.com: domain of "SRS0=6/WF=S2=goodmis.org=rostedt@kernel.org" designates 145.40.68.75 as permitted sender) smtp.mailfrom="SRS0=6/WF=S2=goodmis.org=rostedt@kernel.org" X-Stat-Signature: wzjexsj9um4erd91oh36indgysdwz3oi X-Rspamd-Server: rspam11 X-HE-Tag: 1644612010-223810 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: On Fri, 11 Feb 2022 08:10:18 +0100 Christophe Leroy wrote: > diff --git a/include/linux/trace_events.h b/include/linux/trace_events.h > index 70c069aef02c..dcea51fb60e2 100644 > --- a/include/linux/trace_events.h > +++ b/include/linux/trace_events.h > @@ -699,6 +699,8 @@ event_triggers_post_call(struct trace_event_file *file, > > bool trace_event_ignore_this_pid(struct trace_event_file *trace_file); > > +bool __trace_trigger_soft_disabled(struct trace_event_file *file); > + > /** > * trace_trigger_soft_disabled - do triggers and test if soft disabled > * @file: The file pointer of the event to test > @@ -708,20 +710,20 @@ bool trace_event_ignore_this_pid(struct trace_event_file *trace_file); > * triggers that require testing the fields, it will return true, > * otherwise false. > */ > -static inline bool > +static __always_inline bool > trace_trigger_soft_disabled(struct trace_event_file *file) > { > unsigned long eflags = file->flags; > > - if (!(eflags & EVENT_FILE_FL_TRIGGER_COND)) { > - if (eflags & EVENT_FILE_FL_TRIGGER_MODE) > - event_triggers_call(file, NULL, NULL, NULL); > - if (eflags & EVENT_FILE_FL_SOFT_DISABLED) > - return true; > - if (eflags & EVENT_FILE_FL_PID_FILTER) > - return trace_event_ignore_this_pid(file); > - } > - return false; > + if (likely(!(eflags & (EVENT_FILE_FL_TRIGGER_MODE | > + EVENT_FILE_FL_SOFT_DISABLED | > + EVENT_FILE_FL_PID_FILTER)))) > + return false; > + > + if (likely(eflags & EVENT_FILE_FL_TRIGGER_COND)) > + return false; > + > + return __trace_trigger_soft_disabled(file); > } > > #ifdef CONFIG_BPF_EVENTS > diff --git a/kernel/trace/trace_events_trigger.c b/kernel/trace/trace_events_trigger.c > index d00fee705f9c..55de490e25ca 100644 > --- a/kernel/trace/trace_events_trigger.c > +++ b/kernel/trace/trace_events_trigger.c > @@ -84,6 +84,20 @@ event_triggers_call(struct trace_event_file *file, > } > EXPORT_SYMBOL_GPL(event_triggers_call); > > +bool __trace_trigger_soft_disabled(struct trace_event_file *file) > +{ > + unsigned long eflags = file->flags; > + > + if (eflags & EVENT_FILE_FL_TRIGGER_MODE) > + event_triggers_call(file, NULL, NULL, NULL); > + if (eflags & EVENT_FILE_FL_SOFT_DISABLED) > + return true; > + if (eflags & EVENT_FILE_FL_PID_FILTER) > + return trace_event_ignore_this_pid(file); > + return false; > +} > +EXPORT_SYMBOL_GPL(__trace_trigger_soft_disabled); > + > /** > * event_triggers_post_call - Call 'post_triggers' for a trace event > * @file: The trace_event_file associated with the event > -- This version looks fine to me. I'll pull it into my queue. Thanks! -- Steve