aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/printk.h
diff options
context:
space:
mode:
authorHerbert Xu <herbert@gondor.apana.org.au>2020-07-21 16:22:48 +1000
committerSergey Senozhatsky <sergey.senozhatsky@gmail.com>2020-07-27 17:46:24 +0900
commitb4a461e72bcb28a512bbdd29a4cb70aede2d68d3 (patch)
tree9384d6ab3bef584f4bee0b8a3b75e929c8d8dd2a /include/linux/printk.h
parentdoc:kmsg: explicitly state the return value in case of SEEK_CUR (diff)
downloadlinux-dev-b4a461e72bcb28a512bbdd29a4cb70aede2d68d3.tar.xz
linux-dev-b4a461e72bcb28a512bbdd29a4cb70aede2d68d3.zip
printk: Make linux/printk.h self-contained
As it stands if you include printk.h by itself it will fail to compile because it requires definitions from ratelimit.h. However, simply including ratelimit.h from printk.h does not work due to inclusion loops involving sched.h and kernel.h. This patch solves this by moving bits from ratelimit.h into a new header file which can then be included by printk.h without any worries about header loops. The build bot then revealed some intriguing failures arising out of this patch. On s390 there is an inclusion loop with asm/bug.h and linux/kernel.h that triggers a compile failure, because kernel.h will cause asm-generic/bug.h to be included before s390's own asm/bug.h has finished processing. This has been fixed by not including kernel.h in arch/s390/include/asm/bug.h. Signed-off-by: Herbert Xu <herbert@gondor.apana.org.au> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Reviewed-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com> Acked-by: Petr Mladek <pmladek@suse.com> Acked-by: Steven Rostedt (VMware) <rostedt@goodmis.org> Signed-off-by: Sergey Senozhatsky <sergey.senozhatsky@gmail.com> Link: https://lore.kernel.org/r/20200721062248.GA18383@gondor.apana.org.au
Diffstat (limited to 'include/linux/printk.h')
-rw-r--r--include/linux/printk.h1
1 files changed, 1 insertions, 0 deletions
diff --git a/include/linux/printk.h b/include/linux/printk.h
index fc8f03c54543..34c1a7be3e01 100644
--- a/include/linux/printk.h
+++ b/include/linux/printk.h
@@ -7,6 +7,7 @@
#include <linux/kern_levels.h>
#include <linux/linkage.h>
#include <linux/cache.h>
+#include <linux/ratelimit_types.h>
extern const char linux_banner[];
extern const char linux_proc_banner[];