summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSamuel Thibault <samuel.thibault@ens-lyon.org>2011-08-31 00:18:07 +0200
committerSamuel Thibault <samuel.thibault@ens-lyon.org>2011-08-31 00:29:01 +0200
commit2b4bff9914d57bff600ac70194b8b1aab3485bee (patch)
treee9005927106641520d1ae1d164b5177966aa0e4e
parent234a66c93eb7a783f4d25fc527a247f4151f95cb (diff)
Fix declarations
* device/ds_routines.h (io_done_list): Add variable declaration. (device_io_map): Keep variable declaration and move definition to... * device/ds_routines.c: ... here. * i386/i386/fpu.c: Include <i386/pic.h> (curr_ipl): Remove declaration. (fpintr): Add int unit parameter. * linux/dev/glue/glue.h: New header. * i386/i386/fpu.h (fpintr): Add function prototype. * i386/i386/hardclock.c (clock_interrupt, linux_timer_intr): Remove prototypes. [LINUX_DEV]: Include <linux/dev/glue/glue.h> * i386/i386/ipl.h (curr_ipl): Add declaration. * i386/i386/pic.h (curr_pic_mask, pic_mask, prtnull, intnull): Add declarations. * i386/i386at/kd.h (kdintr): Add declaration. * i386/i386at/pic_isa.c: Include <i386/fpu.h> and <i386at/kd.h> (intnull, fpintr, hardclock, kdintr, prtnull): Remove prototypes. * i386/xen/xen.c: Include <kern/mach_clock.h> (clock_interrupt): Remove prototype. * linux/dev/arch/i386/kernel/irq.c: Include <linux/dev/glue/glue.h> and <machine/machspl.h> (linux_timer_intr, splhigh, spl0, curr_ipl, curr_pic_mask, pic_mask, get_options): Remove declarations. * linux/dev/drivers/block/floppy.c: Include <linux/dev/glue/glue.h> (issig, get_options): Remove declarations. * linux/dev/drivers/block/genhd.c: Include <linux/dev/glue/glue.h> (linux_intr_pri): Remove declaration. * linux/dev/glue/block.c: Include <devices/ds_routines.h> and <linux/dev/glue/glue.h>. (device_io_map, blksize_size): Remove declarations. * linux/dev/glue/kmem.c: Include <kern/printf.h> and <linux/dev/glue/glue.h> (alloc_contig_mem, printf): Remove declarations. * linux/dev/glue/misc.c: Include <printf.h> and <linux/dev/glue/glue.h> (vm_map_lookup_entry, printf): Remove prototypes. * linux/dev/glue/net.c: Include <kern/printf.h>, <device/ds_routines.h> and <linux/dev/glue/glue.h>. (linux_intr_pri, io_done_list): Remove declarations. * linux/dev/init/main.c: Include <machine/model_dep.h> and <linux/dev/glue/glue.h>. (phys_last_addr, alloc_contig_mem, free_contig_mem, init_IRQ, restore_IRQ, startrtclock, linux_version_init, linux_kmem_init, pci_init, linux_net_emulation_init, device_setup, linux_printk, linux_timer_intr, spl0, splhigh, form_pic_mask, linux_bad_intr, prtnull, intnull, linux_sched_init, pcmcia_init): Remove declarations. * linux/dev/kernel/sched.c: Include <kern/printf.h>, <machine/machspl.h> and <linux/dev/glue/glue.h>. (alloc_contig_mem, free_contig_mem, splhigh, splx, linux_soft_intr, issig, printf, linux_auto_config): Remove prototypes. * linux/dev/kernel/softirq.c: Include <linux/dev/glue/glue.h>. * linux/src/drivers/block/floppy.c: Include <linux/dev/glue/glue.h>. (get_options): Remove prototype. * linux/src/init/main.c: Include <linux/dev/glue/glue.h> (init_IRQ): Remove prototype.
-rw-r--r--device/ds_routines.c2
-rw-r--r--device/ds_routines.h4
-rw-r--r--i386/i386/fpu.c4
-rw-r--r--i386/i386/fpu.h1
-rw-r--r--i386/i386/hardclock.c7
-rw-r--r--i386/i386/ipl.h1
-rw-r--r--i386/i386/pic.h4
-rw-r--r--i386/i386at/kd.h2
-rw-r--r--i386/i386at/pic_isa.c6
-rw-r--r--i386/xen/xen.c2
-rw-r--r--linux/dev/arch/i386/kernel/irq.c13
-rw-r--r--linux/dev/drivers/block/floppy.c5
-rw-r--r--linux/dev/drivers/block/genhd.c3
-rw-r--r--linux/dev/glue/block.c10
-rw-r--r--linux/dev/glue/glue.h44
-rw-r--r--linux/dev/glue/kmem.c4
-rw-r--r--linux/dev/glue/misc.c6
-rw-r--r--linux/dev/glue/net.c6
-rw-r--r--linux/dev/init/main.c26
-rw-r--r--linux/dev/kernel/sched.c13
-rw-r--r--linux/dev/kernel/softirq.c2
-rw-r--r--linux/src/drivers/block/floppy.c4
-rw-r--r--linux/src/init/main.c3
23 files changed, 93 insertions, 79 deletions
diff --git a/device/ds_routines.c b/device/ds_routines.c
index 2173ddf..d4a08fb 100644
--- a/device/ds_routines.c
+++ b/device/ds_routines.c
@@ -130,6 +130,8 @@ static struct device_emulation_ops *emulation_list[] =
&mach_device_emulation_ops,
};
+vm_map_t device_io_map;
+
#define NUM_EMULATION (sizeof (emulation_list) / sizeof (emulation_list[0]))
io_return_t
diff --git a/device/ds_routines.h b/device/ds_routines.h
index e1f6aad..a00a12d 100644
--- a/device/ds_routines.h
+++ b/device/ds_routines.h
@@ -41,7 +41,9 @@
/*
* Map for device IO memory.
*/
-vm_map_t device_io_map;
+extern vm_map_t device_io_map;
+
+extern queue_head_t io_done_list;
kern_return_t device_read_alloc(io_req_t, vm_size_t);
kern_return_t device_write_get(io_req_t, boolean_t *);
diff --git a/i386/i386/fpu.c b/i386/i386/fpu.c
index 2a4b9c0..2626a38 100644
--- a/i386/i386/fpu.c
+++ b/i386/i386/fpu.c
@@ -52,12 +52,12 @@
#include <i386/thread.h>
#include <i386/fpu.h>
#include <i386/pio.h>
+#include <i386/pic.h>
#include <i386/locore.h>
#include "cpu_number.h"
#if 0
#include <i386/ipl.h>
-extern int curr_ipl;
#define ASSERT_IPL(L) \
{ \
if (curr_ipl != L) { \
@@ -865,7 +865,7 @@ fp_state_alloc()
* This comes in on line 5 of the slave PIC at SPL1.
*/
void
-fpintr()
+fpintr(int unit)
{
spl_t s;
thread_t thread = current_thread();
diff --git a/i386/i386/fpu.h b/i386/i386/fpu.h
index 1a1b61f..2156187 100644
--- a/i386/i386/fpu.h
+++ b/i386/i386/fpu.h
@@ -124,5 +124,6 @@ extern void fpextovrflt(void);
extern void fpexterrflt(void);
extern void fpastintr(void);
extern void init_fpu(void);
+extern void fpintr(int unit);
#endif /* _I386_FPU_H_ */
diff --git a/i386/i386/hardclock.c b/i386/i386/hardclock.c
index c97feac..aecd3a3 100644
--- a/i386/i386/hardclock.c
+++ b/i386/i386/hardclock.c
@@ -39,13 +39,12 @@
#include <i386/ipl.h>
#endif
-extern void clock_interrupt();
-extern char return_to_iret[];
-
#ifdef LINUX_DEV
-extern void linux_timer_intr(void);
+#include <linux/dev/glue/glue.h>
#endif
+extern char return_to_iret[];
+
void
hardclock(iunit, old_ipl, ret_addr, regs)
int iunit; /* 'unit' number */
diff --git a/i386/i386/ipl.h b/i386/i386/ipl.h
index 557cd8d..8f729e1 100644
--- a/i386/i386/ipl.h
+++ b/i386/i386/ipl.h
@@ -73,5 +73,6 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
extern void (*ivect[])();
extern int iunit[];
extern int intpri[];
+extern spl_t curr_ipl;
#endif /* __ASSEMBLER__ */
#endif /* KERNEL */
diff --git a/i386/i386/pic.h b/i386/i386/pic.h
index 7a177d8..52f6ec1 100644
--- a/i386/i386/pic.h
+++ b/i386/i386/pic.h
@@ -179,6 +179,10 @@ WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
#ifndef __ASSEMBLER__
extern void form_pic_mask (void);
extern void picinit (void);
+extern int curr_pic_mask;
+extern int pic_mask[];
+extern void prtnull(int unit);
+extern void intnull(int unit);
#endif
#endif /* _I386_PIC_H_ */
diff --git a/i386/i386at/kd.h b/i386/i386at/kd.h
index bc265b0..3f0dfe1 100644
--- a/i386/i386at/kd.h
+++ b/i386/i386at/kd.h
@@ -740,4 +740,6 @@ extern void kd_slmwd (void *start, int count, int value);
extern void kd_slmscu (void *from, void *to, int count);
extern void kd_slmscd (void *from, void *to, int count);
+extern void kdintr(int vec, int regs);
+
#endif /* _KD_H_ */
diff --git a/i386/i386at/pic_isa.c b/i386/i386at/pic_isa.c
index ef7d84c..e48fb50 100644
--- a/i386/i386at/pic_isa.c
+++ b/i386/i386at/pic_isa.c
@@ -27,11 +27,11 @@
#include <sys/types.h>
#include <i386/ipl.h>
#include <i386/pic.h>
-
+#include <i386/fpu.h>
+#include <i386at/kd.h>
/* These interrupts are always present */
-extern void intnull(), fpintr(), hardclock(), kdintr();
-extern void prtnull();
+extern void hardclock();
void (*ivect[NINTR])() = {
/* 00 */ hardclock, /* always */
diff --git a/i386/xen/xen.c b/i386/xen/xen.c
index 87a1ed9..a46ee2c 100644
--- a/i386/xen/xen.c
+++ b/i386/xen/xen.c
@@ -18,6 +18,7 @@
#include <kern/printf.h>
#include <kern/debug.h>
+#include <kern/mach_clock.h>
#include <mach/machine/eflags.h>
#include <machine/thread.h>
@@ -43,7 +44,6 @@ void hyp_failsafe_c_callback(struct failsafe_callback_regs *regs) {
panic("failsafe");
}
-extern void clock_interrupt();
extern void return_to_iret;
void hypclock_machine_intr(int old_ipl, void *ret_addr, struct i386_interrupt_state *regs, unsigned64_t delta) {
diff --git a/linux/dev/arch/i386/kernel/irq.c b/linux/dev/arch/i386/kernel/irq.c
index 7faaa62..d996c25 100644
--- a/linux/dev/arch/i386/kernel/irq.c
+++ b/linux/dev/arch/i386/kernel/irq.c
@@ -47,10 +47,8 @@
#include <asm/io.h>
#include <asm/hardirq.h>
-extern void linux_timer_intr (void);
-extern spl_t splhigh (void);
-extern spl_t spl0 (void);
-extern void form_pic_mask (void);
+#include <linux/dev/glue/glue.h>
+#include <machine/machspl.h>
#if 0
/* XXX: This is the way it's done in linux 2.2. GNU Mach currently uses intr_count. It should be made using local_{bh/irq}_count instead (through hardirq_enter/exit) for SMP support. */
@@ -95,12 +93,6 @@ static struct linux_action *irq_action[16] =
NULL, NULL, NULL, NULL
};
-extern spl_t curr_ipl;
-extern int curr_pic_mask;
-extern int pic_mask[];
-
-extern void intnull (), prtnull ();
-
/*
* Generic interrupt handler for Linux devices.
* Set up a fake `struct pt_regs' then call the real handler.
@@ -446,7 +438,6 @@ static void show(char * str)
int i;
unsigned long *stack;
int cpu = smp_processor_id();
- extern char *get_options(char *str, int *ints);
printk("\n%s, CPU %d:\n", str, cpu);
printk("irq: %d [%d %d]\n",
diff --git a/linux/dev/drivers/block/floppy.c b/linux/dev/drivers/block/floppy.c
index d3fcd6a..d297e61 100644
--- a/linux/dev/drivers/block/floppy.c
+++ b/linux/dev/drivers/block/floppy.c
@@ -177,6 +177,8 @@ static inline int __get_order(unsigned long size);
#include <linux/blk.h>
#include <linux/cdrom.h> /* for the compatibility eject ioctl */
+#include <linux/dev/glue/glue.h>
+
#ifndef FLOPPY_MOTOR_MASK
#define FLOPPY_MOTOR_MASK 0xf0
@@ -437,7 +439,6 @@ static int probing = 0;
static volatile int command_status = FD_COMMAND_NONE, fdc_busy = 0;
static struct wait_queue *fdc_wait = NULL, *command_done = NULL;
#ifdef MACH
-extern int issig (void);
#define NO_SIGNAL (! issig () || ! interruptible)
#else
#define NO_SIGNAL (!(current->signal & ~current->blocked) || !interruptible)
@@ -4172,8 +4173,6 @@ static void floppy_release_irq_and_dma(void)
#ifdef MODULE
-extern char *get_options(char *str, int *ints);
-
char *floppy=NULL;
static void parse_floppy_cfg_string(char *cfg)
diff --git a/linux/dev/drivers/block/genhd.c b/linux/dev/drivers/block/genhd.c
index 68a27d5..84b3792 100644
--- a/linux/dev/drivers/block/genhd.c
+++ b/linux/dev/drivers/block/genhd.c
@@ -39,6 +39,7 @@
#ifdef MACH
#include <machine/spl.h>
+#include <linux/dev/glue/glue.h>
#endif
#define SYS_IND(p) get_unaligned(&p->sys_ind)
@@ -770,8 +771,6 @@ void device_setup(void)
struct gendisk *p;
int nr=0;
#ifdef MACH
- extern int linux_intr_pri;
-
linux_intr_pri = SPL5;
#endif
diff --git a/linux/dev/glue/block.c b/linux/dev/glue/block.c
index f28644e..c995638 100644
--- a/linux/dev/glue/block.c
+++ b/linux/dev/glue/block.c
@@ -61,6 +61,7 @@
#include <device/disk_status.h>
#include <device/device_reply.user.h>
#include <device/device_emul.h>
+#include <device/ds_routines.h>
/* TODO. This should be fixed to not be i386 specific. */
#include <i386at/disk.h>
@@ -78,9 +79,7 @@
#include <linux/hdreg.h>
#include <asm/io.h>
-extern int linux_auto_config;
-extern int linux_intr_pri;
-extern int linux_to_mach_error (int);
+#include <linux/dev/glue/glue.h>
/* This task queue is not used in Mach: just for fixing undefined symbols. */
DECLARE_TASK_QUEUE (tq_disk);
@@ -193,9 +192,6 @@ int read_ahead[MAX_BLKDEV] = {0, };
This is unused in Mach. It is here to make drivers compile. */
struct wait_queue *wait_for_request = NULL;
-/* Map for allocating device memory. */
-extern vm_map_t device_io_map;
-
/* Initialize block drivers. */
int
blk_dev_init ()
@@ -276,8 +272,6 @@ unregister_blkdev (unsigned major, const char *name)
void
set_blocksize (kdev_t dev, int size)
{
- extern int *blksize_size[];
-
if (! blksize_size[MAJOR (dev)])
return;
diff --git a/linux/dev/glue/glue.h b/linux/dev/glue/glue.h
new file mode 100644
index 0000000..5d4f6d8
--- /dev/null
+++ b/linux/dev/glue/glue.h
@@ -0,0 +1,44 @@
+/*
+ * Copyright (C) 2011 Free Software Foundation
+ *
+ * This program is free software ; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License as published by
+ * the Free Software Foundation ; either version 2 of the License, or
+ * (at your option) any later version.
+ *
+ * This program is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY ; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * GNU General Public License for more details.
+ *
+ * You should have received a copy of the GNU General Public License
+ * along with the program ; if not, write to the Free Software
+ * Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
+ */
+
+#ifndef LINUX_DEV_GLUE_GLUE_H
+#define LINUX_DEV_GLUE_GLUE_H
+
+#include <vm/vm_types.h>
+#include <mach/machine/vm_types.h>
+
+extern int linux_auto_config;
+extern int linux_intr_pri;
+
+extern void *alloc_contig_mem (unsigned, unsigned, unsigned, vm_page_t *);
+extern void free_contig_mem (vm_page_t);
+extern void init_IRQ (void);
+extern void restore_IRQ (void);
+extern void linux_kmem_init (void);
+extern void linux_net_emulation_init (void);
+extern void device_setup (void);
+extern void linux_timer_intr (void);
+extern void linux_bad_intr (int);
+extern void linux_sched_init (void);
+extern void pcmcia_init (void);
+extern void linux_soft_intr (void);
+extern int issig (void);
+extern int linux_to_mach_error (int);
+extern char *get_options(char *str, int *ints);
+
+#endif /* LINUX_DEV_GLUE_GLUE_H */
diff --git a/linux/dev/glue/kmem.c b/linux/dev/glue/kmem.c
index 8c21ce7..d1784a5 100644
--- a/linux/dev/glue/kmem.c
+++ b/linux/dev/glue/kmem.c
@@ -29,6 +29,7 @@
#include <kern/assert.h>
#include <kern/kalloc.h>
+#include <kern/printf.h>
#include <vm/vm_page.h>
#include <vm/vm_kern.h>
@@ -40,8 +41,7 @@
#include <asm/system.h>
-extern void *alloc_contig_mem (unsigned, unsigned, unsigned, vm_page_t *);
-extern int printf (const char *, ...);
+#include <linux/dev/glue/glue.h>
/* Amount of memory to reserve for Linux memory allocator.
We reserve 64K chunks to stay within DMA limits.
diff --git a/linux/dev/glue/misc.c b/linux/dev/glue/misc.c
index b467650..98c8248 100644
--- a/linux/dev/glue/misc.c
+++ b/linux/dev/glue/misc.c
@@ -53,6 +53,7 @@
#include <sys/types.h>
#include <mach/vm_param.h>
#include <kern/thread.h>
+#include <kern/printf.h>
#include <vm/vm_map.h>
#include <vm/vm_page.h>
#include <device/device_types.h>
@@ -66,10 +67,7 @@
#include <linux/blk.h>
#include <linux/proc_fs.h>
#include <linux/kernel_stat.h>
-
-extern boolean_t vm_map_lookup_entry (register vm_map_t, register vm_offset_t,
- vm_map_entry_t *);
-extern int printf (const char *, ...);
+#include <linux/dev/glue/glue.h>
int (*dispatch_scsi_info_ptr) (int ino, char *buffer, char **start,
off_t offset, int length, int inout) = 0;
diff --git a/linux/dev/glue/net.c b/linux/dev/glue/net.c
index acb31ae..91ebf96 100644
--- a/linux/dev/glue/net.c
+++ b/linux/dev/glue/net.c
@@ -69,6 +69,8 @@
#include <mach/vm_param.h>
#include <mach/notify.h>
+#include <kern/printf.h>
+
#include <ipc/ipc_port.h>
#include <ipc/ipc_space.h>
@@ -84,6 +86,7 @@
#include <device/net_io.h>
#include <device/device_reply.user.h>
#include <device/device_emul.h>
+#include <device/ds_routines.h>
#define MACH_INCLUDE
#include <linux/kernel.h>
@@ -97,7 +100,7 @@
#include <linux/etherdevice.h>
#include <linux/wireless.h>
-extern int linux_intr_pri;
+#include <linux/dev/glue/glue.h>
/* One of these is associated with each instance of a device. */
struct net_data
@@ -248,7 +251,6 @@ void
dev_kfree_skb (struct sk_buff *skb, int mode)
{
unsigned flags;
- extern void *io_done_list;
/* Queue sk_buff on done list if there is a
page list attached or we need to send a reply.
diff --git a/linux/dev/init/main.c b/linux/dev/init/main.c
index 9ed35d3..3a88983 100644
--- a/linux/dev/init/main.c
+++ b/linux/dev/init/main.c
@@ -39,6 +39,7 @@
#include <machine/spl.h>
#include <machine/pmap.h>
#include <machine/vm_param.h>
+#include <machine/model_dep.h>
#define MACH_INCLUDE
#include <linux/sched.h>
@@ -47,6 +48,7 @@
#include <linux/delay.h>
#include <linux/ioport.h>
#include <linux/string.h>
+#include <linux/dev/glue/glue.h>
#include <asm/system.h>
#include <asm/io.h>
@@ -83,30 +85,6 @@ struct drive_info_struct
*/
static void calibrate_delay (void);
-extern vm_offset_t phys_last_addr;
-
-extern void *alloc_contig_mem (unsigned, unsigned, unsigned, vm_page_t *);
-extern void free_contig_mem (vm_page_t);
-extern void init_IRQ (void);
-extern void restore_IRQ (void);
-extern void startrtclock (void);
-extern void linux_version_init (void);
-extern void linux_kmem_init (void);
-extern unsigned long pci_init (unsigned long, unsigned long);
-extern void linux_net_emulation_init (void);
-extern void device_setup (void);
-extern void linux_printk (char *,...);
-extern int linux_timer_intr (void);
-extern spl_t spl0 (void);
-extern spl_t splhigh (void);
-extern void form_pic_mask (void);
-extern int linux_bad_intr (int);
-extern int prtnull ();
-extern int intnull ();
-extern void linux_sched_init (void);
-extern void pcmcia_init (void);
-
-
/*
* Amount of contiguous memory to allocate for initialization.
*/
diff --git a/linux/dev/kernel/sched.c b/linux/dev/kernel/sched.c
index 7b5c5e4..0d2567f 100644
--- a/linux/dev/kernel/sched.c
+++ b/linux/dev/kernel/sched.c
@@ -34,6 +34,9 @@
#include <kern/thread.h>
#include <kern/sched_prim.h>
+#include <kern/printf.h>
+
+#include <machine/machspl.h>
#define MACH_INCLUDE
#include <linux/sched.h>
@@ -41,21 +44,13 @@
#include <linux/fs.h>
#include <linux/blkdev.h>
#include <linux/interrupt.h>
+#include <linux/dev/glue/glue.h>
#include <asm/system.h>
#include <asm/atomic.h>
int securelevel = 0;
-extern void *alloc_contig_mem (unsigned, unsigned, unsigned, vm_page_t *);
-extern void free_contig_mem (vm_page_t);
-extern spl_t splhigh (void);
-extern spl_t splx (spl_t);
-extern void linux_soft_intr (void);
-extern int issig (void);
-extern int printf (const char *, ...);
-extern int linux_auto_config;
-
static void timer_bh (void);
DECLARE_TASK_QUEUE (tq_timer);
diff --git a/linux/dev/kernel/softirq.c b/linux/dev/kernel/softirq.c
index 96102a7..65a0962 100644
--- a/linux/dev/kernel/softirq.c
+++ b/linux/dev/kernel/softirq.c
@@ -13,6 +13,8 @@
#include <linux/interrupt.h>
#include <asm/system.h>
+#include <linux/dev/glue/glue.h>
+
int bh_mask_count[32];
unsigned long bh_active = 0;
unsigned long bh_mask = 0;
diff --git a/linux/src/drivers/block/floppy.c b/linux/src/drivers/block/floppy.c
index 0314a0b..1b96c44 100644
--- a/linux/src/drivers/block/floppy.c
+++ b/linux/src/drivers/block/floppy.c
@@ -177,6 +177,8 @@ static inline int __get_order(unsigned long size);
#include <linux/blk.h>
#include <linux/cdrom.h> /* for the compatibility eject ioctl */
+#include <linux/dev/glue/glue.h>
+
#ifndef FLOPPY_MOTOR_MASK
#define FLOPPY_MOTOR_MASK 0xf0
@@ -4167,8 +4169,6 @@ static void floppy_release_irq_and_dma(void)
#ifdef MODULE
-extern char *get_options(char *str, int *ints);
-
char *floppy=NULL;
static void parse_floppy_cfg_string(char *cfg)
diff --git a/linux/src/init/main.c b/linux/src/init/main.c
index d41ec60..1aa15b9 100644
--- a/linux/src/init/main.c
+++ b/linux/src/init/main.c
@@ -42,6 +42,8 @@
#include <asm/bugs.h>
+#include <linux/dev/glue/glue.h>
+
/*
* Versions of gcc older than that listed below may actually compile
* and link okay, but the end product can have subtle run time bugs.
@@ -64,7 +66,6 @@ extern int bdflush(void *);
extern int kswapd(void *);
extern void kswapd_setup(void);
-extern void init_IRQ(void);
extern void init_modules(void);
extern long console_init(long, long);
extern long kmalloc_init(long,long);