[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <202503251238.4BA5CA87@keescook>
Date: Tue, 25 Mar 2025 12:38:38 -0700
From: Kees Cook <kees@...nel.org>
To: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
Cc: Christophe JAILLET <christophe.jaillet@...adoo.fr>,
Steven Rostedt <rostedt@...dmis.org>,
"Masami Hiramatsu (Google)" <mhiramat@...nel.org>,
linux-kernel@...r.kernel.org, linux-hardening@...r.kernel.org,
linux-trace-kernel@...r.kernel.org,
Andy Shevchenko <andy@...nel.org>,
Mathieu Desnoyers <mathieu.desnoyers@...icios.com>,
Andrew Morton <akpm@...ux-foundation.org>,
Petr Mladek <pmladek@...e.com>,
Rasmus Villemoes <linux@...musvillemoes.dk>,
Sergey Senozhatsky <senozhatsky@...omium.org>
Subject: Re: [PATCH v2 0/6] vsprintf: Add __printf attribute to where it's
required
On Fri, Mar 21, 2025 at 04:40:46PM +0200, Andy Shevchenko wrote:
> This whole series started from a simple fix (see the last patch)
> to make GCC (Debian 14.2.0-17) happy when compiling with `make W=1`
> (note, that CONFIG_WERROR=y and all warnings break the build!)
> down to a rabbit hole.
>
> However starting from v2 the last patch doesn't require the first
> part, I prefer still to have them since the functions, while being
> _binary_ printf()-like, are still printf()-like. It also puts in align
> the tracing stuff with the rest and fixes the wrong parameter value.
>
> These first 4 patches are organised in a strict order and can't be
> reshuffled, otherwise it will produce a warnings in between.
>
> I believe the best route for the series is printk tree with immutable
> tag or branch for the others.
>
> Alternatively the first 4 patches can be applied first as they
> are pretty much straightforward. They also can be squashed to one
> (as the same topic behind), but it all is up to the respective
> maintainers.
>
> In v2:
> - split out patch 5 (Rasmus)
> - rewritten the approach for the va_format() fix (Rasmus)
> - amended tracing patch (removed a blank line and a __printf() in C file)
>
> Andy Shevchenko (6):
> seq_buf: Mark binary printing functions with __printf() attribute
> seq_file: Mark binary printing functions with __printf() attribute
> tracing: Mark binary printing functions with __printf() attribute
> vsnprintf: Mark binary printing functions with __printf() attribute
> vsnprintf: Drop unused const char fmt * in va_format()
> vsnprintf: Silence false positive GCC warning for va_format()
>
> include/linux/seq_buf.h | 4 ++--
> include/linux/seq_file.h | 1 +
> include/linux/string.h | 4 ++--
> include/linux/trace.h | 4 ++--
> include/linux/trace_seq.h | 8 ++++----
> kernel/trace/trace.c | 11 +++--------
> kernel/trace/trace.h | 16 +++++++++-------
> lib/vsprintf.c | 9 +++++++--
> 8 files changed, 30 insertions(+), 27 deletions(-)
Cool; it'll be nice to get these marked up.
Reviewed-by: Kees Cook <kees@...nel.org>
--
Kees Cook
Powered by blists - more mailing lists