Re: [PATCH 1/2] tracing: work around -Wmissing-format-attribute warning

Masami Hiramatsu (Google) <[email protected]> Wed, 3 Jun 2026 10:58:42 +0900
Newsgroups dev.linux.lists.brcm80211,dev.linux.lists.llvm,org.kernel.vger.linux-kernel,org.kernel.vger.linux-rdma,org.kernel.vger.linux-trace-kernel,org.kernel.vger.linux-wireless
Message-ID <[email protected]>
On Tue,  2 Jun 2026 17:07:05 +0200
Arnd Bergmann <[email protected]> wrote:

> diff --git a/include/linux/sprintf.h b/include/linux/sprintf.h
> index f06f7b785091..036a247b7c1e 100644
> --- a/include/linux/sprintf.h
> +++ b/include/linux/sprintf.h
> @@ -12,6 +12,7 @@ __printf(2, 3) int sprintf(char *buf, const char * fmt, ...);
>  __printf(2, 0) int vsprintf(char *buf, const char *, va_list);
>  __printf(3, 4) int snprintf(char *buf, size_t size, const char *fmt, ...);
>  __printf(3, 0) int vsnprintf(char *buf, size_t size, const char *fmt, va_list args);
> +int __vsnprintf(char *buf, size_t size, const char *fmt, va_list args);
>  __printf(3, 4) int scnprintf(char *buf, size_t size, const char *fmt, ...);
>  __printf(3, 0) int vscnprintf(char *buf, size_t size, const char *fmt, va_list args);
>  __printf(2, 3) __malloc char *kasprintf(gfp_t gfp, const char *fmt, ...);
> diff --git a/include/linux/trace_events.h b/include/linux/trace_events.h
> index d49338c44014..4715330c7b6b 100644
> --- a/include/linux/trace_events.h
> +++ b/include/linux/trace_events.h
> @@ -962,7 +962,7 @@ perf_trace_buf_submit(void *raw_data, int size, int rctx, u16 type,
>  	int __ret;					\
>  							\
>  	va_copy(__ap, *(va));				\
> -	__ret = vsnprintf(NULL, 0, fmt, __ap) + 1;	\
> +	__ret = __vsnprintf(NULL, 0, fmt, __ap) + 1;	\
>  	va_end(__ap);					\
>  							\
>  	min(__ret, TRACE_EVENT_STR_MAX);		\

I think this is a slightly confusing name. What about vsnprintf_nocheck()?

Thanks,

-- 
Masami Hiramatsu (Google) <[email protected]>