Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1415105 > unrolled thread

[PATCH] x86: include linux/ratelimit.h in nmi.c

Started byArnd Bergmann <arnd@arndb.de>
First post2016-06-06 16:20 +0200
Last post2016-06-06 17:10 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] x86: include linux/ratelimit.h in nmi.c Arnd Bergmann <arnd@arndb.de> - 2016-06-06 16:20 +0200
    Re: [PATCH] x86: include linux/ratelimit.h in nmi.c Alexandre Belloni <alexandre.belloni@free-electrons.com> - 2016-06-06 17:10 +0200

#1415105 — [PATCH] x86: include linux/ratelimit.h in nmi.c

FromArnd Bergmann <arnd@arndb.de>
Date2016-06-06 16:20 +0200
Subject[PATCH] x86: include linux/ratelimit.h in nmi.c
Message-ID<rH3xM-62c-43@gated-at.bofh.it>
When building random configurations, we now occasionally get a new
build error:

   In file included from include/linux/kernel.h:13:0,
                    from include/linux/list.h:8,
                    from include/linux/preempt.h:10,
                    from include/linux/spinlock.h:50,
                    from arch/x86/kernel/nmi.c:13:
   arch/x86/kernel/nmi.c: In function 'nmi_max_handler':
   include/linux/printk.h:375:9: error: type defaults to 'int' in declaration of 'DEFINE_RATELIMIT_STATE' [-Werror=implicit-int]
     static DEFINE_RATELIMIT_STATE(_rs,    \
            ^
   arch/x86/kernel/nmi.c:110:2: note: in expansion of macro 'printk_ratelimited'
     printk_ratelimited(KERN_INFO
     ^~~~~~~~~~~~~~~~~~

This was working before the rtc rework series because linux/ratelimit.h
was included implictly through asm/mach_traps.h -> asm/mc146818rtc.h
-> linux/mc146818rtc.h -> linux/rtc.h -> linux/device.h.

We clearly shouldn't rely on this indirect inclusion, so this adds
an explicit #include in the file that needs it.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reported-by: kbuild test robot <fengguang.wu@intel.com>
Fixes: 5ab788d73832 ("rtc: cmos: move mc146818rtc code out of asm-generic/rtc.h")
---
It's only broken in the linux-rtc git at the moment, so it makes sense
to fix it there.

 arch/x86/kernel/nmi.c | 1 +
 1 file changed, 1 insertion(+)

diff --git a/arch/x86/kernel/nmi.c b/arch/x86/kernel/nmi.c
index 04b132a767f1..bfe4d6c96fbd 100644
--- a/arch/x86/kernel/nmi.c
+++ b/arch/x86/kernel/nmi.c
@@ -17,6 +17,7 @@
 #include <linux/debugfs.h>
 #include <linux/delay.h>
 #include <linux/hardirq.h>
+#include <linux/ratelimit.h>
 #include <linux/slab.h>
 #include <linux/export.h>
 
-- 
2.7.0

[toc] | [next] | [standalone]


#1415198

FromAlexandre Belloni <alexandre.belloni@free-electrons.com>
Date2016-06-06 17:10 +0200
Message-ID<rH4k9-6Am-5@gated-at.bofh.it>
In reply to#1415105
On 06/06/2016 at 16:09:52 +0200, Arnd Bergmann wrote :
> When building random configurations, we now occasionally get a new
> build error:
> 
>    In file included from include/linux/kernel.h:13:0,
>                     from include/linux/list.h:8,
>                     from include/linux/preempt.h:10,
>                     from include/linux/spinlock.h:50,
>                     from arch/x86/kernel/nmi.c:13:
>    arch/x86/kernel/nmi.c: In function 'nmi_max_handler':
>    include/linux/printk.h:375:9: error: type defaults to 'int' in declaration of 'DEFINE_RATELIMIT_STATE' [-Werror=implicit-int]
>      static DEFINE_RATELIMIT_STATE(_rs,    \
>             ^
>    arch/x86/kernel/nmi.c:110:2: note: in expansion of macro 'printk_ratelimited'
>      printk_ratelimited(KERN_INFO
>      ^~~~~~~~~~~~~~~~~~
> 
> This was working before the rtc rework series because linux/ratelimit.h
> was included implictly through asm/mach_traps.h -> asm/mc146818rtc.h
> -> linux/mc146818rtc.h -> linux/rtc.h -> linux/device.h.
> 
> We clearly shouldn't rely on this indirect inclusion, so this adds
> an explicit #include in the file that needs it.
> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> Reported-by: kbuild test robot <fengguang.wu@intel.com>
> Fixes: 5ab788d73832 ("rtc: cmos: move mc146818rtc code out of asm-generic/rtc.h")
> ---
> It's only broken in the linux-rtc git at the moment, so it makes sense
> to fix it there.
> 
>  arch/x86/kernel/nmi.c | 1 +
>  1 file changed, 1 insertion(+)
> 
Applied, thanks.

-- 
Alexandre Belloni, Free Electrons
Embedded Linux, Kernel and Android engineering
http://free-electrons.com

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web