From 6168a702ab0be181e5e57a0b2d0e7376f7a47f0b Mon Sep 17 00:00:00 2001 From: Andrew Morton Date: Sat, 17 Feb 2007 21:22:39 -0800 Subject: [PATCH] Declare init_irq_proc before we use it. powerpc gets: init/main.c: In function `do_basic_setup': init/main.c:714: warning: implicit declaration of function `init_irq_proc' but we cannot include linux/irq.h in generic code. Fix it by moving the declaration into linux/interrupt.h instead. And make sure all code that defines init_irq_proc() is including linux/interrupt.h. And nuke an ifdef-in-C Cc: Thomas Gleixner Cc: Ingo Molnar Cc: Benjamin Herrenschmidt Cc: Paul Mackerras Signed-off-by: Andrew Morton Signed-off-by: Linus Torvalds --- arch/h8300/kernel/ints.c | 1 + arch/h8300/platform/h8s/ints.c | 1 + arch/m68k/kernel/ints.c | 1 + arch/m68knommu/platform/5307/ints.c | 1 + include/linux/interrupt.h | 9 +++++++++ include/linux/irq.h | 3 --- init/main.c | 5 +---- 7 files changed, 14 insertions(+), 7 deletions(-) diff --git a/arch/h8300/kernel/ints.c b/arch/h8300/kernel/ints.c index 587ef7f4fcc7..3e4f479271c9 100644 --- a/arch/h8300/kernel/ints.c +++ b/arch/h8300/kernel/ints.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include diff --git a/arch/h8300/platform/h8s/ints.c b/arch/h8300/platform/h8s/ints.c index 567f681ddfec..a71d6e2a3919 100644 --- a/arch/h8300/platform/h8s/ints.c +++ b/arch/h8300/platform/h8s/ints.c @@ -20,6 +20,7 @@ #include #include #include +#include #include #include #include diff --git a/arch/m68k/kernel/ints.c b/arch/m68k/kernel/ints.c index 84aceca6c05c..b66c97c904b3 100644 --- a/arch/m68k/kernel/ints.c +++ b/arch/m68k/kernel/ints.c @@ -28,6 +28,7 @@ #include #include #include +#include #include #include #include diff --git a/arch/m68knommu/platform/5307/ints.c b/arch/m68knommu/platform/5307/ints.c index a57239ec6c8c..20f12a19a522 100644 --- a/arch/m68knommu/platform/5307/ints.c +++ b/arch/m68knommu/platform/5307/ints.c @@ -19,6 +19,7 @@ #include #include #include +#include #include #include #include diff --git a/include/linux/interrupt.h b/include/linux/interrupt.h index e5ea1411050b..838cf5a5bd7f 100644 --- a/include/linux/interrupt.h +++ b/include/linux/interrupt.h @@ -423,4 +423,13 @@ extern int probe_irq_off(unsigned long); /* returns 0 or negative on failure */ extern unsigned int probe_irq_mask(unsigned long); /* returns mask of ISA interrupts */ #endif +#ifdef CONFIG_PROC_FS +/* Initialize /proc/irq/ */ +extern void init_irq_proc(void); +#else +static inline void init_irq_proc(void) +{ +} +#endif + #endif diff --git a/include/linux/irq.h b/include/linux/irq.h index 1939d42c21d2..aa5b3e6178a0 100644 --- a/include/linux/irq.h +++ b/include/linux/irq.h @@ -328,9 +328,6 @@ extern void note_interrupt(unsigned int irq, struct irq_desc *desc, /* Resending of interrupts :*/ void check_irq_resend(struct irq_desc *desc, unsigned int irq); -/* Initialize /proc/irq/ */ -extern void init_irq_proc(void); - /* Enable/disable irq debugging output: */ extern int noirqdebug_setup(char *str); diff --git a/init/main.c b/init/main.c index 953500b02ac4..1c5f6dce1bd2 100644 --- a/init/main.c +++ b/init/main.c @@ -41,6 +41,7 @@ #include #include #include +#include #include #include #include @@ -702,11 +703,7 @@ static void __init do_basic_setup(void) init_workqueues(); usermodehelper_init(); driver_init(); - -#ifdef CONFIG_PROC_FS init_irq_proc(); -#endif - do_initcalls(); } -- cgit v1.2.3