The patch titled Subject: bug: consolidate warn_slowpath_fmt() usage has been added to the -mm tree. Its filename is bug-consolidate-warn_slowpath_fmt-usage.patch This patch should soon appear at http://ozlabs.org/~akpm/mmots/broken-out/bug-consolidate-warn_slowpath_fmt-usage.patch and later at http://ozlabs.org/~akpm/mmotm/broken-out/bug-consolidate-warn_slowpath_fmt-usage.patch Before you just go and hit "reply", please: a) Consider who else should be cc'ed b) Prefer to cc a suitable mailing list as well c) Ideally: find the original patch on the mailing list and do a reply-to-all to that, adding suitable additional cc's *** Remember to use Documentation/process/submit-checklist.rst when testing your code *** The -mm tree is included into linux-next and is updated there every 3-4 working days ------------------------------------------------------ From: Kees Cook <keescook@xxxxxxxxxxxx> Subject: bug: consolidate warn_slowpath_fmt() usage Instead of having a separate helper for no printk output, just consolidate the logic into warn_slowpath_fmt(). Link: http://lkml.kernel.org/r/20190819234111.9019-4-keescook@xxxxxxxxxxxx Signed-off-by: Kees Cook <keescook@xxxxxxxxxxxx> Cc: Arnd Bergmann <arnd@xxxxxxxx> Cc: Borislav Petkov <bp@xxxxxxx> Cc: Christophe Leroy <christophe.leroy@xxxxxx> Cc: Drew Davenport <ddavenport@xxxxxxxxxxxx> Cc: Feng Tang <feng.tang@xxxxxxxxx> Cc: Mauro Carvalho Chehab <mchehab+samsung@xxxxxxxxxx> Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx> Cc: Petr Mladek <pmladek@xxxxxxxx> Cc: "Steven Rostedt (VMware)" <rostedt@xxxxxxxxxxx> Cc: YueHaibing <yuehaibing@xxxxxxxxxx> Signed-off-by: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx> --- include/asm-generic/bug.h | 3 +-- kernel/panic.c | 14 +++++++------- 2 files changed, 8 insertions(+), 9 deletions(-) --- a/include/asm-generic/bug.h~bug-consolidate-warn_slowpath_fmt-usage +++ a/include/asm-generic/bug.h @@ -93,9 +93,8 @@ struct bug_entry { extern __printf(4, 5) void warn_slowpath_fmt(const char *file, const int line, unsigned taint, const char *fmt, ...); -extern void warn_slowpath_null(const char *file, const int line); #define WANT_WARN_ON_SLOWPATH -#define __WARN() warn_slowpath_null(__FILE__, __LINE__) +#define __WARN() __WARN_printf(TAINT_WARN, NULL) #define __WARN_printf(taint, arg...) \ warn_slowpath_fmt(__FILE__, __LINE__, taint, arg) #else --- a/kernel/panic.c~bug-consolidate-warn_slowpath_fmt-usage +++ a/kernel/panic.c @@ -605,19 +605,19 @@ void warn_slowpath_fmt(const char *file, { struct warn_args args; + if (!fmt) { + pr_warn(CUT_HERE); + __warn(file, line, __builtin_return_address(0), taint, + NULL, NULL); + return; + } + args.fmt = fmt; va_start(args.args, fmt); __warn(file, line, __builtin_return_address(0), taint, NULL, &args); va_end(args.args); } EXPORT_SYMBOL(warn_slowpath_fmt); - -void warn_slowpath_null(const char *file, int line) -{ - pr_warn(CUT_HERE); - __warn(file, line, __builtin_return_address(0), TAINT_WARN, NULL, NULL); -} -EXPORT_SYMBOL(warn_slowpath_null); #else void __warn_printk(const char *fmt, ...) { _ Patches currently in -mm which might be from keescook@xxxxxxxxxxxx are strscpy-reject-buffer-sizes-larger-than-int_max.patch bug-refactor-away-warn_slowpath_fmt_taint.patch bug-rename-__warn_printf_taint-to-__warn_printf.patch bug-consolidate-warn_slowpath_fmt-usage.patch bug-lift-cut-here-out-of-__warn.patch bug-clean-up-helper-macros-to-remove-__warn_taint.patch bug-consolidate-__warn_flags-usage.patch bug-move-warn_on-cut-here-into-exception-handler.patch