From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-yw1-f175.google.com (mail-yw1-f175.google.com [209.85.128.175]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id DF62B3655FD for ; Sun, 21 Jun 2026 13:08:38 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.128.175 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782047320; cv=none; b=DriGmTih0wPqRjFPahFJimN/86RGqJD7WpmTrf4aKJMJM9hpyyrNSGpYqZPw9sf8OBEbM1+PWjJjWfO5ZZJKfUDOEqNq0nszNah8Z3gmqLGAzxRg3DrTe/F/aF5owf4TpK1COL9yqTxZ9sAzHkIJ7TnmWoU0Vq52q6xQCLKeTp4= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1782047320; c=relaxed/simple; bh=me33Az45dCRutFUzQ4N1c3MdvdJrDzsOWQ4IrxhWNMc=; h=From:Date:To:Cc:Subject:Message-ID:References:MIME-Version: Content-Type:Content-Disposition:In-Reply-To; b=SQMDQsM/P0S5ptjj6g7tatl2JQ+RMCb04oxPv/GlM0LnAPPIwLR+/2CcsFK9lEn/xNf4H5Eg8XbtXgw9xtfj3nn3C6Bui+JpKkcnfeyKMPdjr1nxeLNpO5VtI64UjMx50RgLUxsOhYKDysxRwSmXY8vVstTyfvO+pXWyH1HQlVM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=nfEhSIE7; arc=none smtp.client-ip=209.85.128.175 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="nfEhSIE7" Received: by mail-yw1-f175.google.com with SMTP id 00721157ae682-7fe8bc0a01bso32542657b3.1 for ; Sun, 21 Jun 2026 06:08:38 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20251104; t=1782047318; x=1782652118; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:from:to:cc:subject:date:message-id:reply-to; bh=JelQF+PgdiILboeOL52+qm2l/XNW/EjjD3ktKV3cKe4=; b=nfEhSIE74z/mf/Z0c5mBSac7i23tgbFrZildwk1bx4AMBh+Zvd6dgn1udde+l8ZPPt 0/2MSos+4QuEn79HqB7TNx+LupVlYAuHYCQso+l8Qu24O0nCvNIjadYhVuzQNhGZuGat +imEhhVfRs9k0rJXxvPzJSID5NjBzk6jzcCjfaQVfidNvLI159z3cgw76JnCvUU6svHi o1dWoJaO+ZxaW9xedadD57tLyWjTqjFUTrYt0Z66hkoiPVP+32DBA/zOqd5NzPx4Qo+F elQdARSkMiZK16gZd19EcX5w0Mu5Uesp5bySYww6zgBY9BTejYSEeYeX8mhHvewdew2h YP4g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1782047318; x=1782652118; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:date:from:x-gm-gg:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=JelQF+PgdiILboeOL52+qm2l/XNW/EjjD3ktKV3cKe4=; b=g025h098XsLBwZTmryZvAoYYVQ2oC+7Pt2epBbY7o0XxFvm5yM0nPF2mdCf7t8egl6 WP/03wlazQZQK+NOrPheFV6siVzy3z+hhirOkKeYf+ch8WhCFJILyiDdGenR3N4tFWeV 4LTujRMkJim25xsM8MMG/ujYQveXScwrhD1LSVycNW/suVedSChXGJ98A8P7Ldt+dyMx ZtZTcZYvF7+rz9asLGQ1Leyog2lMGPRLBHu+VV1HNA1OTRHoG0mWg17jypTy0XaHg23n emMdYvIOqhdHpx7iLezaVqsH0mhjOx1v+N26LFU2v4EvAPxdyo1yuhVm7/rNv8RlLte6 /yrQ== X-Forwarded-Encrypted: i=1; AHgh+RpsbQ+9A6DhjM8sB+8nhdGHYhYn4EufSmEJJWE6T0LPF4QEqrhAz+K9zCv6H53WtIwqyq8=@vger.kernel.org X-Gm-Message-State: AOJu0Ywuf8Qu6Z7yw+PnUIbMzbjLfN0lSFDWrc/8kYmgWkFv2ehCH7Zg 7XwEXH7+cnnzIcPRRalDe/H6T7XSN6SEnfVIRkwmBikNPQR8aMmGfOKG X-Gm-Gg: AfdE7cl56TjxTSmfYvf4MmLy1xzcuZG0iIa8TAD/txMW6E0qIc/XDBovqN8EMYe6Y3G 4cPiVP3U9toWkN6PkfgdqHNjNHpdTdBT5z9v/3fD5IrSyCL0301+/3CYnpl4y79Wk4j4wtxz72r lHYsj2Js1gVhiDR5N+YDprCx14VU1/O+wAzziiO2obHlAqnUuysnpNFFmbTZTZkDIgQZauq1HgN xRUJF7M9fj5D6DU6xDoBnAmT7gjimUEQtey1JTrWv3ZnUMb1J5x4O0ks3B1B6UNdgxomPP+Nc9p b/YJhnLlNM+xMB6Db+5ojLA2Z/1wBv+Q+2IQ2euRuLtJMCtkZWm4vgYIhNHc8AOycuovYrTgDA2 iIokOtfVfdA6A1ihe0aNMaVF/meTo+ygD03772/IpvMRI2ffpGiqv++3Rzx4uWAxQor/WxeluLg QlINJfRKydVqRAoUsuEP6hVOh3/EfQvYkVZcM= X-Received: by 2002:a05:690c:6881:b0:7fd:5297:28da with SMTP id 00721157ae682-80139103c73mr119142517b3.49.1782047317965; Sun, 21 Jun 2026 06:08:37 -0700 (PDT) Received: from localhost (user-24-214-85-55.knology.net. [24.214.85.55]) by smtp.gmail.com with ESMTPSA id 00721157ae682-8025cf693f8sm20544597b3.15.2026.06.21.06.08.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sun, 21 Jun 2026 06:08:37 -0700 (PDT) From: Yury Norov X-Google-Original-From: Yury Norov Date: Sun, 21 Jun 2026 09:08:37 -0400 To: Steven Rostedt Cc: linux-kernel@vger.kernel.org, linux-trace-kernel@vger.kernel.org, Masami Hiramatsu , Mark Rutland , Mathieu Desnoyers , Andrew Morton , Linus Torvalds , Sebastian Andrzej Siewior , John Ogness , Thomas Gleixner , Peter Zijlstra , Julia Lawall , Yury Norov , linux-doc@vger.kernel.org, linux-kbuild@vger.kernel.org, linuxppc-dev@lists.ozlabs.org, dri-devel@lists.freedesktop.org, linux-stm32@st-md-mailman.stormreply.com, linux-arm-kernel@lists.infradead.org, linux-rdma@vger.kernel.org, linux-usb@vger.kernel.org, linux-ext4@vger.kernel.org, linux-nfs@vger.kernel.org, kvm@vger.kernel.org, intel-gfx@lists.freedesktop.org Subject: Re: [PATCH 1/2] tracing: Move non-trace_printk prototypes back to kernel.h Message-ID: References: <20260621093430.264983361@kernel.org> <20260621093811.007634476@kernel.org> Precedence: bulk X-Mailing-List: kvm@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20260621093811.007634476@kernel.org> On Sun, Jun 21, 2026 at 05:34:31AM -0400, Steven Rostedt wrote: > From: Steven Rostedt > > In order to remove the include to trace_printk.h from kernel.h the tracing > control prototypes need to be moved back into kernel.h. That's because Please don't. Instead, you can split them out to trace_control.h, and include where needed. I actually have a prototype for it, FYI: https://github.com/norov/linux/tree/trace_pritk3 > they are used in other common header files like rcu.h. There's no point in > removing trace_printk.h from kernel.h if it just gets added back to other > common headers. > > Prototypes are very cheap for the compiler and should not be an issue. It's not about cost, it's about mess. kernel.h is included everywhere. Is that API needed everywhere? No, it's needed in literally 10 files. So, no place in kernel.h. > Signed-off-by: Steven Rostedt > --- > include/linux/kernel.h | 18 ++++++++++++++++++ > include/linux/trace_printk.h | 17 ----------------- > 2 files changed, 18 insertions(+), 17 deletions(-) > > diff --git a/include/linux/kernel.h b/include/linux/kernel.h > index e5570a16cbb1..c3c68128827c 100644 > --- a/include/linux/kernel.h > +++ b/include/linux/kernel.h > @@ -194,4 +194,22 @@ extern enum system_states system_state; > # define REBUILD_DUE_TO_DYNAMIC_FTRACE > #endif > > +#ifdef CONFIG_TRACING > +void tracing_on(void); > +void tracing_off(void); > +int tracing_is_on(void); > +void tracing_snapshot(void); > +void tracing_snapshot_alloc(void); > +void tracing_start(void); > +void tracing_stop(void); > +#else > +static inline void tracing_start(void) { } > +static inline void tracing_stop(void) { } > +static inline void tracing_on(void) { } > +static inline void tracing_off(void) { } > +static inline int tracing_is_on(void) { return 0; } > +static inline void tracing_snapshot(void) { } > +static inline void tracing_snapshot_alloc(void) { } > +#endif > + > #endif > diff --git a/include/linux/trace_printk.h b/include/linux/trace_printk.h > index 3d54f440dccf..879fed0805fd 100644 > --- a/include/linux/trace_printk.h > +++ b/include/linux/trace_printk.h > @@ -35,15 +35,6 @@ enum ftrace_dump_mode { > }; > > #ifdef CONFIG_TRACING > -void tracing_on(void); > -void tracing_off(void); > -int tracing_is_on(void); > -void tracing_snapshot(void); > -void tracing_snapshot_alloc(void); > - > -extern void tracing_start(void); > -extern void tracing_stop(void); > - > static inline __printf(1, 2) > void ____trace_printk_check_format(const char *fmt, ...) > { > @@ -176,16 +167,8 @@ __ftrace_vprintk(unsigned long ip, const char *fmt, va_list ap); > > extern void ftrace_dump(enum ftrace_dump_mode oops_dump_mode); > #else > -static inline void tracing_start(void) { } > -static inline void tracing_stop(void) { } > static inline void trace_dump_stack(int skip) { } > > -static inline void tracing_on(void) { } > -static inline void tracing_off(void) { } > -static inline int tracing_is_on(void) { return 0; } > -static inline void tracing_snapshot(void) { } > -static inline void tracing_snapshot_alloc(void) { } > - > static inline __printf(1, 2) > int trace_printk(const char *fmt, ...) > { > -- > 2.53.0 >