diff options
| author | Petr Mladek <pmladek@suse.com> | 2025-08-04 14:15:14 +0200 |
|---|---|---|
| committer | Petr Mladek <pmladek@suse.com> | 2025-08-04 14:15:14 +0200 |
| commit | 3bfd34ed362b0a8aa96b54a582f0a32786ceec43 (patch) | |
| tree | 8fae435ee2b88f8cef4990481729175134cd5bc9 | |
| parent | Merge tag 'printk-for-6.15-2' of git://git.kernel.org/pub/scm/linux/kernel/gi... (diff) | |
| parent | vsprintf: Use __diag macros to disable '-Wsuggest-attribute=format' (diff) | |
| download | linux-3bfd34ed362b0a8aa96b54a582f0a32786ceec43.tar.gz linux-3bfd34ed362b0a8aa96b54a582f0a32786ceec43.zip | |
Merge branch 'for-6.15-printf-attribute' into for-linus
| -rw-r--r-- | include/linux/compiler-gcc.h | 2 | ||||
| -rw-r--r-- | lib/vsprintf.c | 9 |
2 files changed, 6 insertions, 5 deletions
diff --git a/include/linux/compiler-gcc.h b/include/linux/compiler-gcc.h index 32048052c64a..5d07c469b571 100644 --- a/include/linux/compiler-gcc.h +++ b/include/linux/compiler-gcc.h @@ -127,6 +127,8 @@ #define __diag_GCC_8(s) #endif +#define __diag_GCC_all(s) __diag(s) + #define __diag_ignore_all(option, comment) \ __diag(__diag_GCC_ignore option) diff --git a/lib/vsprintf.c b/lib/vsprintf.c index 01699852f30c..b47464c7af5d 100644 --- a/lib/vsprintf.c +++ b/lib/vsprintf.c @@ -1699,10 +1699,9 @@ char *escaped_string(char *buf, char *end, u8 *addr, struct printf_spec spec, return buf; } -#pragma GCC diagnostic push -#ifndef __clang__ -#pragma GCC diagnostic ignored "-Wsuggest-attribute=format" -#endif +__diag_push(); +__diag_ignore(GCC, all, "-Wsuggest-attribute=format", + "Not a valid __printf() conversion candidate."); static char *va_format(char *buf, char *end, struct va_format *va_fmt, struct printf_spec spec) { @@ -1717,7 +1716,7 @@ static char *va_format(char *buf, char *end, struct va_format *va_fmt, return buf; } -#pragma GCC diagnostic pop +__diag_pop(); static noinline_for_stack char *uuid_string(char *buf, char *end, const u8 *addr, |
