diff -urN linux/drivers/block/aec6210.c linux-2.3.15-work/drivers/block/aec6210.c
--- linux/drivers/block/aec6210.c	Fri Aug  6 02:48:45 1999
+++ linux-2.3.15-work/drivers/block/aec6210.c	Thu Aug 26 10:30:29 1999
@@ -50,7 +50,7 @@
 #include <asm/io.h>
 #include <asm/irq.h>
 
-__initfunc(unsigned int pci_init_aec6210 (struct pci_dev *dev, const char *name))
+unsigned int __init pci_init_aec6210 (struct pci_dev *dev, const char *name)
 {
 	if (dev->rom_address) {
 		pci_write_config_dword(dev, PCI_ROM_ADDRESS, dev->rom_address | PCI_ROM_ADDRESS_ENABLE);
diff -urN linux/drivers/block/alim15x3.c linux-2.3.15-work/drivers/block/alim15x3.c
--- linux/drivers/block/alim15x3.c	Thu Jul  1 18:25:38 1999
+++ linux-2.3.15-work/drivers/block/alim15x3.c	Thu Aug 26 10:31:25 1999
@@ -110,7 +110,7 @@
 
 }
 
-__initfunc(unsigned int pci_init_ali15x3 (struct pci_dev *dev, const char *name))
+unsigned int __init pci_init_ali15x3 (struct pci_dev *dev, const char *name)
 {
 	byte confreg0 = 0, confreg1 =0, progif = 0;
 	int errors = 0;
@@ -194,7 +194,7 @@
 	return ide_dmaproc(func, drive);	/* use standard DMA stuff */
 }
 
-__initfunc(void ide_init_ali15x3 (ide_hwif_t *hwif))
+void __init ide_init_ali15x3 (ide_hwif_t *hwif)
 {
 	struct pci_dev *dev;
 	byte ideic, inmir, iderev;
diff -urN linux/drivers/block/cy82c693.c linux-2.3.15-work/drivers/block/cy82c693.c
--- linux/drivers/block/cy82c693.c	Thu Jun  3 06:21:51 1999
+++ linux-2.3.15-work/drivers/block/cy82c693.c	Thu Aug 26 10:31:39 1999
@@ -420,7 +420,7 @@
 /*
  * the init function - called for each ide channel once
  */
-__initfunc(void ide_init_cy82c693(ide_hwif_t *hwif))
+void __init ide_init_cy82c693(ide_hwif_t *hwif)
 {
 	hwif->chipset = ide_cy82c693;
 	if (hwif->dma_base)
diff -urN linux/drivers/block/hpt34x.c linux-2.3.15-work/drivers/block/hpt34x.c
--- linux/drivers/block/hpt34x.c	Fri Aug  6 02:48:45 1999
+++ linux-2.3.15-work/drivers/block/hpt34x.c	Thu Aug 26 10:30:47 1999
@@ -340,7 +340,7 @@
  */
 #define	HPT34X_PCI_INIT_REG		0x80
 
-__initfunc(unsigned int pci_init_hpt34x (struct pci_dev *dev, const char *name))
+unsigned int __init pci_init_hpt34x (struct pci_dev *dev, const char *name)
 {
 	unsigned short cmd;
 
@@ -377,7 +377,7 @@
 	return dev->irq;
 }
 
-__initfunc(void ide_init_hpt34x (ide_hwif_t *hwif))
+void __init ide_init_hpt34x (ide_hwif_t *hwif)
 {
 	hwif->tuneproc = &hpt34x_tune_drive;
 	if (hwif->dma_base) {
diff -urN linux/drivers/block/hpt366.c linux-2.3.15-work/drivers/block/hpt366.c
--- linux/drivers/block/hpt366.c	Fri Aug  6 19:16:54 1999
+++ linux-2.3.15-work/drivers/block/hpt366.c	Thu Aug 26 10:31:05 1999
@@ -463,7 +463,7 @@
 	return ide_dmaproc(func, drive);	/* use standard DMA stuff */
 }
 
-__initfunc(unsigned int pci_init_hpt366 (struct pci_dev *dev, const char *name))
+unsigned int __init pci_init_hpt366 (struct pci_dev *dev, const char *name)
 {
 	byte ata66 = 0;
 
@@ -474,7 +474,7 @@
 	return dev->irq;
 }
 
-__initfunc(void ide_init_hpt366 (ide_hwif_t *hwif))
+void __init ide_init_hpt366 (ide_hwif_t *hwif)
 {
 	hwif->tuneproc = &hpt366_tune_drive;
 	if (hwif->dma_base) {
diff -urN linux/drivers/block/ide-pci.c linux-2.3.15-work/drivers/block/ide-pci.c
--- linux/drivers/block/ide-pci.c	Mon Aug  9 18:23:09 1999
+++ linux-2.3.15-work/drivers/block/ide-pci.c	Thu Aug 26 10:29:41 1999
@@ -579,7 +579,7 @@
 		printk("%s: neither IDE port enabled (BIOS)\n", d->name);
 }
 
-__initfunc(static void hpt366_device_order_fixup (struct pci_dev *dev, ide_pci_device_t *d))
+static void __init hpt366_device_order_fixup (struct pci_dev *dev, ide_pci_device_t *d)
 {
 	struct pci_dev *dev2;
 	ide_pci_device_t *d2;
diff -urN linux/drivers/block/ide-pmac.c linux-2.3.15-work/drivers/block/ide-pmac.c
--- linux/drivers/block/ide-pmac.c	Mon Aug  9 18:23:09 1999
+++ linux-2.3.15-work/drivers/block/ide-pmac.c	Thu Aug 26 10:30:14 1999
@@ -117,7 +117,7 @@
 	}
 }
 
-__initfunc(void pmac_ide_probe(void))
+void __init pmac_ide_probe(void)
 {
 	struct device_node *np;
 	int i;
diff -urN linux/drivers/block/pdc202xx.c linux-2.3.15-work/drivers/block/pdc202xx.c
--- linux/drivers/block/pdc202xx.c	Fri Aug  6 02:48:45 1999
+++ linux-2.3.15-work/drivers/block/pdc202xx.c	Thu Aug 26 10:31:58 1999
@@ -491,7 +491,7 @@
 	return ide_dmaproc(func, drive);	/* use standard DMA stuff */
 }
 
-__initfunc(unsigned int pci_init_pdc202xx (struct pci_dev *dev, const char *name))
+unsigned int __init pci_init_pdc202xx (struct pci_dev *dev, const char *name)
 {
 	unsigned long high_16	= dev->resource[4].start & PCI_BASE_ADDRESS_IO_MASK;
 	byte udma_speed_flag	= inb(high_16 + 0x001f);
@@ -547,7 +547,7 @@
 	return dev->irq;
 }
 
-__initfunc(void ide_init_pdc202xx (ide_hwif_t *hwif))
+void __init ide_init_pdc202xx (ide_hwif_t *hwif)
 {
 	if (hwif->dma_base) {
 		hwif->dmaproc = &pdc202xx_dmaproc;
diff -urN linux/drivers/block/sis5513.c linux-2.3.15-work/drivers/block/sis5513.c
--- linux/drivers/block/sis5513.c	Fri Aug  6 19:16:54 1999
+++ linux-2.3.15-work/drivers/block/sis5513.c	Thu Aug 26 10:32:21 1999
@@ -330,7 +330,7 @@
 	return ide_dmaproc(func, drive);	/* use standard DMA stuff */
 }
 
-__initfunc(unsigned int pci_init_sis5513 (struct pci_dev *dev, const char *name))
+unsigned int __init pci_init_sis5513 (struct pci_dev *dev, const char *name)
 {
 	struct pci_dev *host;
 	byte latency = 0, reg48h = 0;
@@ -383,7 +383,7 @@
 	return 0;
 }
 
-__initfunc(void ide_init_sis5513 (ide_hwif_t *hwif))
+void __init ide_init_sis5513 (ide_hwif_t *hwif)
 {
 	byte reg48h = 0;
 	byte mask = hwif->channel ? 0x20 : 0x10;
diff -urN linux/drivers/block/via82c586.c linux-2.3.15-work/drivers/block/via82c586.c
--- linux/drivers/block/via82c586.c	Fri Aug  6 02:48:45 1999
+++ linux-2.3.15-work/drivers/block/via82c586.c	Thu Aug 26 10:30:01 1999
@@ -441,7 +441,7 @@
 	return 0;
 }
 
-__initfunc(unsigned int pci_init_via82c568 (struct pci_dev *dev, const char *name))
+unsigned int __init pci_init_via82c568 (struct pci_dev *dev, const char *name)
 {
 	struct pci_dev *host;
 	struct pci_dev *isa;
@@ -567,7 +567,7 @@
 	return 0;
 }
 
-__initfunc(void ide_init_via82c586 (ide_hwif_t *hwif))
+void __init ide_init_via82c586 (ide_hwif_t *hwif)
 {
 	set_via_timings(hwif);
 }
diff -urN linux/drivers/char/adbmouse.c linux-2.3.15-work/drivers/char/adbmouse.c
--- linux/drivers/char/adbmouse.c	Thu Aug 12 19:50:14 1999
+++ linux-2.3.15-work/drivers/char/adbmouse.c	Thu Aug 26 10:35:38 1999
@@ -148,7 +148,7 @@
 	ADB_MOUSE_MINOR, "adbmouse", open_mouse, close_mouse, 7
 };
 
-__initfunc(int adb_mouse_init(void))
+int __init adb_mouse_init(void)
 {
 #ifdef __powerpc__
 	if ((_machine != _MACH_chrp) && (_machine != _MACH_Pmac))
@@ -174,7 +174,7 @@
  * option, which is about using ADB keyboard buttons to emulate
  * mouse buttons. -- paulus
  */
-__initfunc(void adb_mouse_setup(char *str, int *ints))
+void __init adb_mouse_setup(char *str, int *ints)
 {
 	if (ints[0] >= 1) {
 		adb_emulate_buttons = ints[1] > 0;
diff -urN linux/drivers/char/busmouse.c linux-2.3.15-work/drivers/char/busmouse.c
--- linux/drivers/char/busmouse.c	Sun Aug 15 19:48:40 1999
+++ linux-2.3.15-work/drivers/char/busmouse.c	Thu Aug 26 10:32:59 1999
@@ -432,8 +432,8 @@
 	return 0;
 }
 
-__initfunc(int
-bus_mouse_init(void))
+int __init
+bus_mouse_init(void)
 {
 #ifdef CONFIG_BUSMOUSE
 	bus_mouse_init();
diff -urN linux/drivers/char/cyclades.c linux-2.3.15-work/drivers/char/cyclades.c
--- linux/drivers/char/cyclades.c	Mon Aug  9 18:23:09 1999
+++ linux-2.3.15-work/drivers/char/cyclades.c	Thu Aug 26 10:34:39 1999
@@ -179,7 +179,7 @@
  * Change queue_task_irq_off to queue_task_irq.
  * The inline function queue_task_irq_off (tqueue.h)
  * was removed from latest releases of 2.1.x kernel.
- * Use of macro __initfunc to mark the initialization
+ * Use of macro __init to mark the initialization
  * routines, so memory can be reused.
  * Also incorporate implementation of critical region
  * in function cleanup_module() created by anonymous
@@ -4627,8 +4627,8 @@
 
 /* initialize chips on Cyclom-Y card -- return number of valid
    chips (which is number of ports/4) */
-__initfunc(static unsigned short
-cyy_init_card(volatile ucchar *true_base_addr,int index))
+static unsigned short __init
+cyy_init_card(volatile ucchar *true_base_addr,int index)
 {
   unsigned int chip_number;
   volatile ucchar* base_addr;
@@ -4713,8 +4713,8 @@
  * sets global variables and return the number of ISA boards found.
  * ---------------------------------------------------------------------
  */
-__initfunc(static int
-cy_detect_isa(void))
+static int __init
+cy_detect_isa(void)
 {
   unsigned short	cy_isa_irq,nboard;
   volatile ucchar	*cy_isa_address;
@@ -4841,8 +4841,8 @@
  * sets global variables and return the number of PCI boards found.
  * ---------------------------------------------------------------------
  */
-__initfunc(static int
-cy_detect_pci(void))
+static int __init
+cy_detect_pci(void)
 {
 #ifdef CONFIG_PCI
 
@@ -5357,8 +5357,8 @@
     extra ports are ignored.
  */
 
-__initfunc(int
-cy_init(void))
+int __init
+cy_init(void)
 {
   struct cyclades_port  *info;
   struct cyclades_card *cinfo;
diff -urN linux/drivers/char/dz.c linux-2.3.15-work/drivers/char/dz.c
--- linux/drivers/char/dz.c	Tue Jul  6 04:35:18 1999
+++ linux-2.3.15-work/drivers/char/dz.c	Thu Aug 26 10:36:06 1999
@@ -1281,7 +1281,7 @@
 }
 
 
-__initfunc(int dz_init(void))
+int __init dz_init(void)
 {
   int i, flags;
   struct dz_serial *info;
@@ -1454,7 +1454,7 @@
 	return MKDEV(TTY_MAJOR, 64 + c->index);
 }
 
-__initfunc(static int dz_console_setup(struct console *co, char *options))
+static int __init dz_console_setup(struct console *co, char *options)
 {
   	int	baud = 9600;
 	int	bits = 8;
@@ -1590,7 +1590,7 @@
 	NULL
 };
 
-__initfunc (long dz_serial_console_init(long kmem_start, long kmem_end))
+long __init dz_serial_console_init(long kmem_start, long kmem_end)
 {
 	register_console(&dz_sercons);
 
diff -urN linux/drivers/char/ip2main.c linux-2.3.15-work/drivers/char/ip2main.c
--- linux/drivers/char/ip2main.c	Mon Aug 23 21:44:03 1999
+++ linux-2.3.15-work/drivers/char/ip2main.c	Thu Aug 26 11:16:54 1999
@@ -304,8 +304,8 @@
 
 // Some functions to keep track of what irq's we have
 
-__initfunc(static int 
-is_valid_irq(int irq) )
+static int __init
+is_valid_irq(int irq)
 {
 	int *i = Valid_Irqs;
 	
@@ -315,14 +315,14 @@
 	return (*i);
 }
 
-__initfunc( static void
-mark_requested_irq( char irq ))
+static void __init
+mark_requested_irq( char irq )
 {
 	rirqs[iindx++] = irq;
 }
 
-__initfunc( static int
-clear_requested_irq( char irq ))
+static int __init
+clear_requested_irq( char irq )
 {
 	int i;
 	for ( i = 0; i < IP2_MAX_BOARDS; ++i ) {
@@ -334,8 +334,8 @@
 	return 0;
 }
 
-__initfunc( static int
-have_requested_irq( char irq )) 
+static int __init
+have_requested_irq( char irq )
 {
 	// array init to zeros so 0 irq will not be requested as a side effect
 	int i;
@@ -470,8 +470,8 @@
 /* SA_RANDOM   - can be source for cert. random number generators */
 #define IP2_SA_FLAGS	0
 
-__initfunc( int
-old_ip2_init(void))
+int __init
+old_ip2_init(void)
 {
 	int i;
 	int err;
@@ -738,8 +738,8 @@
 /* the board, the channel structures are initialized, and the board details   */
 /* are reported on the console.                                               */
 /******************************************************************************/
-__initfunc( static void
-ip2_init_board( int boardnum ))
+static void __init
+ip2_init_board( int boardnum )
 {
 	int i,rc;
 	int nports = 0, nboxes = 0;
@@ -864,8 +864,8 @@
 /* EISA motherboard, or no valid board ID is selected it returns 0. Otherwise */
 /* it returns the base address of the controller.                             */
 /******************************************************************************/
-__initfunc( static unsigned short
-find_eisa_board( int start_slot ))
+static unsigned short __init
+find_eisa_board( int start_slot )
 {
 	int i, j;
 	unsigned int idm = 0;
diff -urN linux/drivers/char/keyboard.c linux-2.3.15-work/drivers/char/keyboard.c
--- linux/drivers/char/keyboard.c	Thu Aug  5 22:43:32 1999
+++ linux-2.3.15-work/drivers/char/keyboard.c	Thu Aug 26 10:32:34 1999
@@ -901,7 +901,7 @@
 	}
 }
 
-__initfunc(int kbd_init(void))
+int __init kbd_init(void)
 {
 	int i;
 	struct kbd_struct kbd0;
diff -urN linux/drivers/char/msbusmouse.c linux-2.3.15-work/drivers/char/msbusmouse.c
--- linux/drivers/char/msbusmouse.c	Tue Aug  3 18:04:42 1999
+++ linux-2.3.15-work/drivers/char/msbusmouse.c	Thu Aug 26 10:33:37 1999
@@ -60,7 +60,7 @@
 MODULE_PARM(mouse_irq, "i");
 #endif
 
-__initfunc(void msmouse_setup(char *str, int *ints))
+void __init msmouse_setup(char *str, int *ints)
 {
 	if (ints[0] > 0)
 		mouse_irq=ints[1];
@@ -117,7 +117,7 @@
 	MICROSOFT_BUSMOUSE, "msbusmouse", open_mouse, release_mouse, 0
 };
 
-__initfunc(int ms_bus_mouse_init(void))
+int __init ms_bus_mouse_init(void)
 {
 	int present = 0;
 	int mse_byte, i;
diff -urN linux/drivers/char/radio-terratec.c linux-2.3.15-work/drivers/char/radio-terratec.c
--- linux/drivers/char/radio-terratec.c	Tue Jul  6 04:07:02 1999
+++ linux-2.3.15-work/drivers/char/radio-terratec.c	Thu Aug 26 10:36:33 1999
@@ -299,7 +299,7 @@
 	NULL
 };
 
-__initfunc(int terratec_init(struct video_init *v))
+int __init terratec_init(struct video_init *v)
 {
 	if (check_region(io, 2)) 
 	{
diff -urN linux/drivers/char/rocket.c linux-2.3.15-work/drivers/char/rocket.c
--- linux/drivers/char/rocket.c	Thu Aug  5 23:04:52 1999
+++ linux-2.3.15-work/drivers/char/rocket.c	Thu Aug 26 10:52:12 1999
@@ -90,6 +90,7 @@
 #include <linux/init.h>
 #else
 #define __initfunc(x)	x
+#define __init
 #endif
 	
 #include "rocket_int.h"
diff -urN linux/drivers/char/serial.c linux-2.3.15-work/drivers/char/serial.c
--- linux/drivers/char/serial.c	Thu Jul  1 23:09:01 1999
+++ linux-2.3.15-work/drivers/char/serial.c	Thu Aug 26 10:34:03 1999
@@ -3076,7 +3076,7 @@
 /*
  * The serial driver boot-time initialization code!
  */
-__initfunc(int rs_init(void))
+int __init rs_init(void)
 {
 	int i;
 	struct serial_state * state;
@@ -3429,7 +3429,7 @@
  *	- initialize the serial port
  *	Return non-zero if we didn't find a serial port.
  */
-__initfunc(static int serial_console_setup(struct console *co, char *options))
+static int __init serial_console_setup(struct console *co, char *options)
 {
 	struct serial_state *ser;
 	unsigned cval;
@@ -3550,7 +3550,7 @@
 /*
  *	Register console.
  */
-__initfunc (long serial_console_init(long kmem_start, long kmem_end))
+long __init serial_console_init(long kmem_start, long kmem_end)
 {
 	register_console(&sercons);
 	return kmem_start;
diff -urN linux/drivers/char/vino.c linux-2.3.15-work/drivers/char/vino.c
--- linux/drivers/char/vino.c	Wed Jun 30 19:24:54 1999
+++ linux-2.3.15-work/drivers/char/vino.c	Thu Aug 26 10:36:20 1999
@@ -240,7 +240,7 @@
 	0
 };
 
-__initfunc(int init_vino(struct video_device *dev))
+int __init init_vino(struct video_device *dev)
 {
 	int err;
 
diff -urN linux/drivers/char/wdt.c linux-2.3.15-work/drivers/char/wdt.c
--- linux/drivers/char/wdt.c	Wed Jun  2 19:29:13 1999
+++ linux-2.3.15-work/drivers/char/wdt.c	Thu Aug 26 10:35:05 1999
@@ -64,7 +64,7 @@
  *	Setup options
  */
  
-__initfunc(void wdt_setup(char *str, int *ints))
+void __init wdt_setup(char *str, int *ints)
 {
 	if(ints[0]>0)
 	{
@@ -365,7 +365,7 @@
 
 #endif
 
-__initfunc(int wdt_init(void))
+int __init wdt_init(void)
 {
 	printk("WDT500/501-P driver 0.07 at %X (Interrupt %d)\n", io,irq);
 	if(request_irq(irq, wdt_interrupt, SA_INTERRUPT, "wdt501p", NULL))
diff -urN linux/drivers/isdn/eicon/eicon_mod.c linux-2.3.15-work/drivers/isdn/eicon/eicon_mod.c
--- linux/drivers/isdn/eicon/eicon_mod.c	Wed Aug 25 23:18:08 1999
+++ linux-2.3.15-work/drivers/isdn/eicon/eicon_mod.c	Thu Aug 26 11:01:20 1999
@@ -1267,8 +1267,8 @@
 #define eicon_init init_module
 #endif
 
-__initfunc(int
-eicon_init(void))
+int __init
+eicon_init(void)
 {
 	int card_count = 0;
 	int release = 0;
@@ -1373,8 +1373,8 @@
 }
 
 #else /* no module */
-__initfunc(void
-eicon_setup(char *str, int *ints))
+void __init
+eicon_setup(char *str, int *ints)
 {
         int i, argc;
 
diff -urN linux/drivers/isdn/hisax/amd7930.c linux-2.3.15-work/drivers/isdn/hisax/amd7930.c
--- linux/drivers/isdn/hisax/amd7930.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/amd7930.c	Thu Aug 26 10:54:43 1999
@@ -749,8 +749,8 @@
 	return(0);
 }
 
-__initfunc(int
-setup_amd7930(struct IsdnCard *card))
+int __init
+setup_amd7930(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/asuscom.c linux-2.3.15-work/drivers/isdn/hisax/asuscom.c
--- linux/drivers/isdn/hisax/asuscom.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/asuscom.c	Thu Aug 26 10:54:58 1999
@@ -326,8 +326,8 @@
 	return(0);
 }
 
-__initfunc(int
-setup_asuscom(struct IsdnCard *card))
+int __init
+setup_asuscom(struct IsdnCard *card)
 {
 	int bytecnt;
 	struct IsdnCardState *cs = card->cs;
diff -urN linux/drivers/isdn/hisax/avm_a1.c linux-2.3.15-work/drivers/isdn/hisax/avm_a1.c
--- linux/drivers/isdn/hisax/avm_a1.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/avm_a1.c	Thu Aug 26 10:47:11 1999
@@ -227,8 +227,8 @@
 	return(0);
 }
 
-__initfunc(int
-setup_avm_a1(struct IsdnCard *card))
+int __init
+setup_avm_a1(struct IsdnCard *card)
 {
 	u_char val;
 	struct IsdnCardState *cs = card->cs;
diff -urN linux/drivers/isdn/hisax/avm_a1p.c linux-2.3.15-work/drivers/isdn/hisax/avm_a1p.c
--- linux/drivers/isdn/hisax/avm_a1p.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/avm_a1p.c	Thu Aug 26 10:58:00 1999
@@ -262,8 +262,8 @@
 	return 0;
 }
 
-__initfunc(int
-setup_avm_a1_pcmcia(struct IsdnCard *card))
+int __init
+setup_avm_a1_pcmcia(struct IsdnCard *card)
 {
 	u_char model, vers;
 	struct IsdnCardState *cs = card->cs;
diff -urN linux/drivers/isdn/hisax/avm_pci.c linux-2.3.15-work/drivers/isdn/hisax/avm_pci.c
--- linux/drivers/isdn/hisax/avm_pci.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/avm_pci.c	Thu Aug 26 10:58:47 1999
@@ -779,8 +779,8 @@
 static  int pci_index __initdata = 0;
 #endif
 
-__initfunc(int
-setup_avm_pcipnp(struct IsdnCard *card))
+int __init
+setup_avm_pcipnp(struct IsdnCard *card)
 {
 	u_int val, ver;
 	struct IsdnCardState *cs = card->cs;
diff -urN linux/drivers/isdn/hisax/bkm_a4t.c linux-2.3.15-work/drivers/isdn/hisax/bkm_a4t.c
--- linux/drivers/isdn/hisax/bkm_a4t.c	Wed Aug 25 23:18:08 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/bkm_a4t.c	Thu Aug 26 10:59:25 1999
@@ -294,8 +294,8 @@
 static int pci_index __initdata = 0;
 #endif
 
-__initfunc(int
-	   setup_bkm_a4t(struct IsdnCard *card))
+int __init
+	   setup_bkm_a4t(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/bkm_a8.c linux-2.3.15-work/drivers/isdn/hisax/bkm_a8.c
--- linux/drivers/isdn/hisax/bkm_a8.c	Wed Aug 25 23:18:08 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/bkm_a8.c	Thu Aug 26 10:59:38 1999
@@ -347,8 +347,8 @@
 static int pci_index __initdata = 0;
 #endif
 
-__initfunc(int
-	   setup_sct_quadro(struct IsdnCard *card))
+int __init
+	   setup_sct_quadro(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/config.c linux-2.3.15-work/drivers/isdn/hisax/config.c
--- linux/drivers/isdn/hisax/config.c	Wed Aug 25 23:18:08 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/config.c	Thu Aug 26 10:47:50 1999
@@ -555,8 +555,8 @@
 #else
 #ifdef COMPAT_HAS_NEW_SETUP
 #define MAX_ARG	(HISAX_MAX_CARDS*5)
-__initfunc(int
-HiSax_setup(char *line))
+int __init
+HiSax_setup(char *line)
 {
 	int i, j, argc;
 	int ints[MAX_ARG + 1];
@@ -564,8 +564,8 @@
 
 	str = get_options(line, MAX_ARG, ints);
 #else
-__initfunc(void
-HiSax_setup(char *str, int *ints))
+void __init
+HiSax_setup(char *str, int *ints)
 {
 	int i, j, argc;
 #endif        
@@ -1435,8 +1435,8 @@
 }
 
 
-__initfunc(int
-HiSax_init(void))
+int __init
+HiSax_init(void)
 {
 	int i;
 
diff -urN linux/drivers/isdn/hisax/diva.c linux-2.3.15-work/drivers/isdn/hisax/diva.c
--- linux/drivers/isdn/hisax/diva.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/diva.c	Thu Aug 26 10:55:22 1999
@@ -888,8 +888,8 @@
 static  int pci_index __initdata = 0;
 #endif
 
-__initfunc(int
-setup_diva(struct IsdnCard *card))
+int __init
+setup_diva(struct IsdnCard *card)
 {
 	int bytecnt;
 	u_char val;
diff -urN linux/drivers/isdn/hisax/gazel.c linux-2.3.15-work/drivers/isdn/hisax/gazel.c
--- linux/drivers/isdn/hisax/gazel.c	Wed Aug 25 23:18:08 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/gazel.c	Thu Aug 26 10:59:50 1999
@@ -690,8 +690,8 @@
 	return (0);
 }
 
-__initfunc(int
-	   setup_gazel(struct IsdnCard *card))
+int __init
+	   setup_gazel(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/hfc_2bds0.c linux-2.3.15-work/drivers/isdn/hisax/hfc_2bds0.c
--- linux/drivers/isdn/hisax/hfc_2bds0.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/hfc_2bds0.c	Thu Aug 26 10:56:11 1999
@@ -1187,8 +1187,8 @@
 	return(send);
 }
 
-__initfunc(void
-init2bds0(struct IsdnCardState *cs))
+void __init
+init2bds0(struct IsdnCardState *cs)
 {
 	cs->setstack_d = setstack_hfcd;
 	cs->dbusytimer.function = (void *) hfc_dbusy_timer;
diff -urN linux/drivers/isdn/hisax/hfc_2bs0.c linux-2.3.15-work/drivers/isdn/hisax/hfc_2bs0.c
--- linux/drivers/isdn/hisax/hfc_2bs0.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/hfc_2bs0.c	Thu Aug 26 10:56:31 1999
@@ -559,8 +559,8 @@
 	return (0);
 }
 
-__initfunc(void
-init_send(struct BCState *bcs))
+void __init
+init_send(struct BCState *bcs)
 {
 	int i;
 
@@ -573,8 +573,8 @@
 		bcs->hw.hfc.send[i] = 0x1fff;
 }
 
-__initfunc(void
-inithfc(struct IsdnCardState *cs))
+void __init
+inithfc(struct IsdnCardState *cs)
 {
 	init_send(&cs->bcs[0]);
 	init_send(&cs->bcs[1]);
diff -urN linux/drivers/isdn/hisax/hfc_pci.c linux-2.3.15-work/drivers/isdn/hisax/hfc_pci.c
--- linux/drivers/isdn/hisax/hfc_pci.c	Wed Aug 25 23:18:08 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/hfc_pci.c	Thu Aug 26 11:00:25 1999
@@ -1403,8 +1403,8 @@
 /********************************/
 /* called for card init message */
 /********************************/
-__initfunc(void
-	   inithfcpci(struct IsdnCardState *cs))
+void __init
+	   inithfcpci(struct IsdnCardState *cs)
 {
 	cs->setstack_d = setstack_hfcpci;
 	cs->dbusytimer.function = (void *) hfcpci_dbusy_timer;
@@ -1476,8 +1476,8 @@
 
 #endif				/* CONFIG_PCI */
 
-__initfunc(int
-	   setup_hfcpci(struct IsdnCard *card))
+int __init
+	   setup_hfcpci(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/hfcscard.c linux-2.3.15-work/drivers/isdn/hisax/hfcscard.c
--- linux/drivers/isdn/hisax/hfcscard.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/hfcscard.c	Thu Aug 26 11:00:37 1999
@@ -148,8 +148,8 @@
 	return(0);
 }
 
-__initfunc(int
-setup_hfcs(struct IsdnCard *card))
+int __init
+setup_hfcs(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/hisax.h linux-2.3.15-work/drivers/isdn/hisax/hisax.h
--- linux/drivers/isdn/hisax/hisax.h	Wed Aug 25 23:18:08 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/hisax.h	Thu Aug 26 10:48:45 1999
@@ -1007,6 +1007,10 @@
 #define __initdata
 #endif
 
+#ifndef __init
+#define __init
+#endif
+
 #define HISAX_INITFUNC(__arginit) __initfunc(__arginit)
 #define HISAX_INITDATA __initdata
 
diff -urN linux/drivers/isdn/hisax/isurf.c linux-2.3.15-work/drivers/isdn/hisax/isurf.c
--- linux/drivers/isdn/hisax/isurf.c	Wed Aug 25 23:18:08 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/isurf.c	Thu Aug 26 11:00:50 1999
@@ -206,8 +206,8 @@
 	return(isar_auxcmd(cs, ic));
 }
 
-__initfunc(int
-setup_isurf(struct IsdnCard *card))
+int __init
+setup_isurf(struct IsdnCard *card)
 {
 	int ver;
 	struct IsdnCardState *cs = card->cs;
diff -urN linux/drivers/isdn/hisax/ix1_micro.c linux-2.3.15-work/drivers/isdn/hisax/ix1_micro.c
--- linux/drivers/isdn/hisax/ix1_micro.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/ix1_micro.c	Thu Aug 26 10:49:00 1999
@@ -282,8 +282,8 @@
 }
 
 
-__initfunc(int
-setup_ix1micro(struct IsdnCard *card))
+int __init
+setup_ix1micro(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/mic.c linux-2.3.15-work/drivers/isdn/hisax/mic.c
--- linux/drivers/isdn/hisax/mic.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/mic.c	Thu Aug 26 10:56:44 1999
@@ -224,8 +224,8 @@
 	return(0);
 }
 
-__initfunc(int
-setup_mic(struct IsdnCard *card))
+int __init
+setup_mic(struct IsdnCard *card)
 {
 	int bytecnt;
 	struct IsdnCardState *cs = card->cs;
diff -urN linux/drivers/isdn/hisax/netjet.c linux-2.3.15-work/drivers/isdn/hisax/netjet.c
--- linux/drivers/isdn/hisax/netjet.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/netjet.c	Thu Aug 26 10:57:01 1999
@@ -889,8 +889,8 @@
 }
 
  
-__initfunc(void
-inittiger(struct IsdnCardState *cs))
+void __init
+inittiger(struct IsdnCardState *cs)
 {
 	if (!(cs->bcs[0].hw.tiger.send = kmalloc(NETJET_DMA_TXSIZE * sizeof(unsigned int),
 		GFP_KERNEL | GFP_DMA))) {
@@ -1080,8 +1080,8 @@
 static  int pci_index __initdata = 0;
 #endif
 
-__initfunc(int
-setup_netjet(struct IsdnCard *card))
+int __init
+setup_netjet(struct IsdnCard *card)
 {
 	int bytecnt;
 	struct IsdnCardState *cs = card->cs;
diff -urN linux/drivers/isdn/hisax/niccy.c linux-2.3.15-work/drivers/isdn/hisax/niccy.c
--- linux/drivers/isdn/hisax/niccy.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/niccy.c	Thu Aug 26 10:47:26 1999
@@ -265,8 +265,8 @@
 static  int pci_index __initdata = 0;
 #endif
 
-__initfunc(int
-setup_niccy(struct IsdnCard *card))
+int __init
+setup_niccy(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/s0box.c linux-2.3.15-work/drivers/isdn/hisax/s0box.c
--- linux/drivers/isdn/hisax/s0box.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/s0box.c	Thu Aug 26 10:59:00 1999
@@ -212,8 +212,8 @@
 	return(0);
 }
 
-__initfunc(int
-setup_s0box(struct IsdnCard *card))
+int __init
+setup_s0box(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/saphir.c linux-2.3.15-work/drivers/isdn/hisax/saphir.c
--- linux/drivers/isdn/hisax/saphir.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/saphir.c	Thu Aug 26 11:01:03 1999
@@ -265,8 +265,8 @@
 }
 
 
-__initfunc(int
-setup_saphir(struct IsdnCard *card))
+int __init
+setup_saphir(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/sedlbauer.c linux-2.3.15-work/drivers/isdn/hisax/sedlbauer.c
--- linux/drivers/isdn/hisax/sedlbauer.c	Wed Aug 25 23:18:08 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/sedlbauer.c	Thu Aug 26 10:57:15 1999
@@ -546,8 +546,8 @@
 #endif
 #endif
 
-__initfunc(int
-setup_sedlbauer(struct IsdnCard *card))
+int __init
+setup_sedlbauer(struct IsdnCard *card)
 {
 	int bytecnt, ver, val;
 	struct IsdnCardState *cs = card->cs;
diff -urN linux/drivers/isdn/hisax/sportster.c linux-2.3.15-work/drivers/isdn/hisax/sportster.c
--- linux/drivers/isdn/hisax/sportster.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/sportster.c	Thu Aug 26 10:57:33 1999
@@ -208,8 +208,8 @@
 	return(0);
 }
 
-__initfunc(int
-get_io_range(struct IsdnCardState *cs))
+int __init
+get_io_range(struct IsdnCardState *cs)
 {
 	int i, j, adr;
 	
@@ -234,8 +234,8 @@
 	}
 }
 
-__initfunc(int
-setup_sportster(struct IsdnCard *card))
+int __init
+setup_sportster(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/teleint.c linux-2.3.15-work/drivers/isdn/hisax/teleint.c
--- linux/drivers/isdn/hisax/teleint.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/teleint.c	Thu Aug 26 10:57:47 1999
@@ -289,8 +289,8 @@
 	return(0);
 }
 
-__initfunc(int
-setup_TeleInt(struct IsdnCard *card))
+int __init
+setup_TeleInt(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/isdn/hisax/teles0.c linux-2.3.15-work/drivers/isdn/hisax/teles0.c
--- linux/drivers/isdn/hisax/teles0.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/teles0.c	Thu Aug 26 10:49:14 1999
@@ -295,8 +295,8 @@
 	return(0);
 }
 
-__initfunc(int
-setup_teles0(struct IsdnCard *card))
+int __init
+setup_teles0(struct IsdnCard *card)
 {
 	u_char val;
 	struct IsdnCardState *cs = card->cs;
diff -urN linux/drivers/isdn/hisax/teles3.c linux-2.3.15-work/drivers/isdn/hisax/teles3.c
--- linux/drivers/isdn/hisax/teles3.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/teles3.c	Thu Aug 26 10:54:29 1999
@@ -318,8 +318,8 @@
 	return(0);
 }
 
-__initfunc(int
-setup_teles3(struct IsdnCard *card))
+int __init
+setup_teles3(struct IsdnCard *card)
 {
 	u_char val;
 	struct IsdnCardState *cs = card->cs;
diff -urN linux/drivers/isdn/hisax/telespci.c linux-2.3.15-work/drivers/isdn/hisax/telespci.c
--- linux/drivers/isdn/hisax/telespci.c	Thu Aug 12 17:42:33 1999
+++ linux-2.3.15-work/drivers/isdn/hisax/telespci.c	Thu Aug 26 10:59:12 1999
@@ -310,8 +310,8 @@
 static 	int pci_index __initdata = 0;
 #endif
 
-__initfunc(int
-setup_telespci(struct IsdnCard *card))
+int __init
+setup_telespci(struct IsdnCard *card)
 {
 	struct IsdnCardState *cs = card->cs;
 	char tmp[64];
diff -urN linux/drivers/net/8390.c linux-2.3.15-work/drivers/net/8390.c
--- linux/drivers/net/8390.c	Wed Aug 18 19:36:41 1999
+++ linux-2.3.15-work/drivers/net/8390.c	Thu Aug 26 10:23:22 1999
@@ -983,7 +983,7 @@
 }	
 
 /*
- * Initialize the rest of the 8390 device structure.  Do NOT __initfunc
+ * Initialize the rest of the 8390 device structure.  Do NOT __init
  * this, as it is used by 8390 based modular drivers too.
  */
 
diff -urN linux/drivers/net/arlan.c linux-2.3.15-work/drivers/net/arlan.c
--- linux/drivers/net/arlan.c	Mon Aug 23 18:10:29 1999
+++ linux-2.3.15-work/drivers/net/arlan.c	Thu Aug 26 11:45:13 1999
@@ -1,7 +1,7 @@
 /*
  *  Copyright (C) 1997 Cullen Jennings
  *  Copyright (C) 1998 Elmer.Joandi@ut.ee, +37-255-13500        
- *  Gnu Public License applies
+ *  GNU Public License applies
  * This module provides support for the Arlan 655 card made by Aironet
  */
 
@@ -72,11 +72,9 @@
 
 //        #warning kernel 2.1.110 tested
 #define myATOMIC_INIT(a,b) atomic_set(&(a),b)
-#define __initfunctio(a)                __initfunc(a)
-
 #else
 #define test_and_set_bit	set_bit
-#define __initfunctio(a)        a
+#define __init
 #if LINUX_VERSION_CODE != 0x20024
  //        #warning kernel  2.0.36  tested
 #endif
@@ -1034,7 +1032,7 @@
  * verifies that the correct device exists and functions.
  */
 
-__initfunctio(static int arlan_check_fingerprint(int memaddr))
+static int __init arlan_check_fingerprint(int memaddr)
 {
 	static char probeText[] = "TELESYSTEM SLW INC.    ARLAN \0";
 	char tempBuf[49];
@@ -1056,7 +1054,7 @@
 
 }
 
-__initfunctio(int arlan_probe_everywhere(struct net_device *dev))
+int __init arlan_probe_everywhere(struct net_device *dev)
 {
 	int m;
 	int probed = 0;
@@ -1094,7 +1092,7 @@
 	return ENODEV;
 }
 
-__initfunctio(int arlan_find_devices(void))
+int __init arlan_find_devices(void)
 {
 	int m;
 	int found = 0;
@@ -1153,8 +1151,8 @@
 
 
 
-__initfunctio(static int
-	      arlan_allocate_device(int num, struct net_device *devs))
+static int __init
+	      arlan_allocate_device(int num, struct net_device *devs)
 {
 
 	struct net_device *dev;
@@ -1214,7 +1212,7 @@
 }
 
 
-__initfunctio(int arlan_probe_here(struct net_device *dev, int memaddr))
+int __init arlan_probe_here(struct net_device *dev, int memaddr)
 {
 	volatile struct arlan_shmem *arlan;
 
@@ -1992,7 +1990,7 @@
 }
 
 
-__initfunctio(int arlan_probe(struct net_device *dev))
+int __init arlan_probe(struct net_device *dev)
 {
 	printk("Arlan driver %s\n", arlan_version);
 
diff -urN linux/drivers/net/bagetlance.c linux-2.3.15-work/drivers/net/bagetlance.c
--- linux/drivers/net/bagetlance.c	Wed Aug 18 19:36:41 1999
+++ linux-2.3.15-work/drivers/net/bagetlance.c	Thu Aug 26 10:26:44 1999
@@ -469,7 +469,7 @@
 }
 
 
-__initfunc(int bagetlance_probe( struct net_device *dev ))
+int __init bagetlance_probe( struct net_device *dev )
 
 {	int i;
 	static int found = 0;
@@ -493,9 +493,9 @@
 
 /* Derived from hwreg_present() in vme/config.c: */
 
-__initfunc(static int addr_accessible( volatile void *regp, 
+static int __init addr_accessible( volatile void *regp, 
 									   int wordflag, 
-									   int writeflag ))
+									   int writeflag )
 {	
 		/* We have a fine function to do it */
 		extern int try_read(unsigned long, int);
@@ -508,8 +508,8 @@
 #define IRQ_TYPE_PRIO SA_INTERRUPT
 #define IRQ_SOURCE_TO_VECTOR(x) (x)
 
-__initfunc(static unsigned long lance_probe1( struct net_device *dev,
-								   struct lance_addr *init_rec ))
+static unsigned long __init lance_probe1( struct net_device *dev,
+								   struct lance_addr *init_rec )
 
 {	volatile unsigned short *memaddr =
 		(volatile unsigned short *)init_rec->memaddr;
diff -urN linux/drivers/net/cycx_main.c linux-2.3.15-work/drivers/net/cycx_main.c
--- linux/drivers/net/cycx_main.c	Thu Aug 12 17:46:13 1999
+++ linux-2.3.15-work/drivers/net/cycx_main.c	Thu Aug 26 10:26:06 1999
@@ -36,7 +36,7 @@
 #include <linux/wanrouter.h>	/* WAN router definitions */
 #include <linux/cyclomx.h>	/* cyclomx common user API definitions */
 #include <asm/uaccess.h>	/* kernel <-> user copy */
-#include <linux/init.h>         /* __initfunc (when not using as a module) */
+#include <linux/init.h>         /* __init (when not using as a module) */
 
 #ifdef MODULE
 MODULE_AUTHOR("Arnaldo Carvalho de Melo");
@@ -95,7 +95,7 @@
 #ifdef MODULE
 int init_module (void)
 #else
-__initfunc(int cyclomx_init (void))
+int __init cyclomx_init (void)
 #endif
 {
 	int cnt, err = 0;
diff -urN linux/drivers/net/declance.c linux-2.3.15-work/drivers/net/declance.c
--- linux/drivers/net/declance.c	Wed Aug 18 19:36:41 1999
+++ linux-2.3.15-work/drivers/net/declance.c	Thu Aug 26 10:27:03 1999
@@ -1000,7 +1000,7 @@
 	dev->tbusy = 0;
 }
 
-__initfunc(static int dec_lance_init(struct net_device *dev, const int type))
+static int __init dec_lance_init(struct net_device *dev, const int type)
 {
 	static unsigned version_printed = 0;
 	struct lance_private *lp;
@@ -1194,7 +1194,7 @@
 
 
 /* Find all the lance cards on the system and initialize them */
-__initfunc(int dec_lance_probe(struct net_device *dev))
+int __init dec_lance_probe(struct net_device *dev)
 {
 	static int called = 0;
 
diff -urN linux/drivers/net/fc/iph5526.c linux-2.3.15-work/drivers/net/fc/iph5526.c
--- linux/drivers/net/fc/iph5526.c	Mon Aug 23 18:12:38 1999
+++ linux-2.3.15-work/drivers/net/fc/iph5526.c	Thu Aug 26 10:28:54 1999
@@ -224,7 +224,7 @@
 #endif
 
 
-__initfunc(int iph5526_probe(struct net_device *dev))
+int __init iph5526_probe(struct net_device *dev)
 {
 #ifdef CONFIG_PCI
 	if (pci_present() && (iph5526_probe_pci(dev) == 0))
@@ -234,7 +234,7 @@
 }
 
 #ifdef CONFIG_PCI
-__initfunc(static int iph5526_probe_pci(struct net_device *dev))
+static int __init iph5526_probe_pci(struct net_device *dev)
 {
 #ifndef MODULE
 struct fc_info *fi;
@@ -278,7 +278,7 @@
 }
 #endif  /* CONFIG_PCI */
 
-__initfunc(static int fcdev_init(struct net_device *dev))
+static int __init fcdev_init(struct net_device *dev)
 {
 	dev->open = iph5526_open;
 	dev->stop = iph5526_close;
diff -urN linux/drivers/net/hamradio/yam.c linux-2.3.15-work/drivers/net/hamradio/yam.c
--- linux/drivers/net/hamradio/yam.c	Wed Aug 18 19:38:51 1999
+++ linux-2.3.15-work/drivers/net/hamradio/yam.c	Thu Aug 26 10:25:19 1999
@@ -1201,7 +1201,7 @@
 
 /* --------------------------------------------------------------------- */
 
-__initfunc(int yam_init(struct net_device *dev))
+int __init yam_init(struct net_device *dev)
 {
 	int i;
 
@@ -1267,7 +1267,7 @@
 
 #endif
 
-__initfunc(int init_module(void))
+int __init init_module(void)
 {
 	int ret = yam_init(NULL);
 
diff -urN linux/drivers/net/hp100.c linux-2.3.15-work/drivers/net/hp100.c
--- linux/drivers/net/hp100.c	Wed Aug 18 19:36:42 1999
+++ linux-2.3.15-work/drivers/net/hp100.c	Thu Aug 26 10:51:09 1999
@@ -123,6 +123,10 @@
 #define __initfunc(__initarg) __initarg
 #endif
 
+#ifndef __init
+#define __init
+#endif
+
 #include "hp100.h"
 
 /*
diff -urN linux/drivers/net/jazzsonic.c linux-2.3.15-work/drivers/net/jazzsonic.c
--- linux/drivers/net/jazzsonic.c	Wed Aug 18 19:36:42 1999
+++ linux-2.3.15-work/drivers/net/jazzsonic.c	Thu Aug 26 10:27:30 1999
@@ -90,7 +90,7 @@
  * Probe for a SONIC ethernet controller on a Mips Jazz board.
  * Actually probing is superfluous but we're paranoid.
  */
-__initfunc(int sonic_probe(struct net_device *dev))
+int __init sonic_probe(struct net_device *dev)
 {
     unsigned int base_addr = dev ? dev->base_addr : 0;
     int i;
@@ -115,8 +115,8 @@
     return -ENODEV;
 }
 
-__initfunc(static int sonic_probe1(struct net_device *dev,
-                                   unsigned int base_addr, unsigned int irq))
+static int __init sonic_probe1(struct net_device *dev,
+                                   unsigned int base_addr, unsigned int irq)
 {
     static unsigned version_printed = 0;
     unsigned int silicon_revision;
diff -urN linux/drivers/net/macsonic.c linux-2.3.15-work/drivers/net/macsonic.c
--- linux/drivers/net/macsonic.c	Wed Aug 18 19:36:42 1999
+++ linux-2.3.15-work/drivers/net/macsonic.c	Thu Aug 26 10:29:09 1999
@@ -174,7 +174,7 @@
 static unsigned char nibbletab[] = {0, 8, 4, 12, 2, 10, 6, 14,
 				    1, 9, 5, 13, 3, 11, 7, 15};
 
-__initfunc(int mac_onboard_sonic_probe(void))
+int __init mac_onboard_sonic_probe(void)
 {
 	struct net_device *dev;
 	unsigned int silicon_revision;
diff -urN linux/drivers/net/mvme147.c linux-2.3.15-work/drivers/net/mvme147.c
--- linux/drivers/net/mvme147.c	Wed Aug 18 19:36:42 1999
+++ linux-2.3.15-work/drivers/net/mvme147.c	Thu Aug 26 10:29:26 1999
@@ -70,7 +70,7 @@
 #endif
 
 /* Initialise the one and only on-board 7990 */
-__initfunc(int mvme147lance_probe(struct net_device *dev))
+int __init mvme147lance_probe(struct net_device *dev)
 {
 	static int called = 0;
 	static const char name[] = "MVME147 LANCE";
diff -urN linux/drivers/net/olympic.c linux-2.3.15-work/drivers/net/olympic.c
--- linux/drivers/net/olympic.c	Thu Aug 19 00:24:11 1999
+++ linux-2.3.15-work/drivers/net/olympic.c	Thu Aug 26 10:28:00 1999
@@ -150,7 +150,7 @@
 #endif
 #endif
 
-__initfunc(int olympic_probe(struct net_device *dev)) 
+int __init olympic_probe(struct net_device *dev)
 {
 	int cards_found;
 
@@ -158,7 +158,7 @@
 	return cards_found ? 0 : -ENODEV;
 }
 
-__initfunc(static int olympic_scan(struct net_device *dev)) 
+static int __init olympic_scan(struct net_device *dev)
 {
 	struct pci_dev *pci_device = NULL ;
 	struct olympic_private *olympic_priv;
@@ -226,7 +226,7 @@
 }
 
 
-__initfunc(static int olympic_init(struct net_device *dev)) 
+static int __init olympic_init(struct net_device *dev)
 {
     	struct olympic_private *olympic_priv;
 	__u8 *olympic_mmio, *init_srb,*adapter_addr;
diff -urN linux/drivers/net/sdlamain.c linux-2.3.15-work/drivers/net/sdlamain.c
--- linux/drivers/net/sdlamain.c	Wed Jun  2 22:40:22 1999
+++ linux-2.3.15-work/drivers/net/sdlamain.c	Thu Aug 26 10:25:46 1999
@@ -43,7 +43,7 @@
 #include <linux/wanpipe.h>	/* WANPIPE common user API definitions */
 #include <asm/uaccess.h>	/* kernel <-> user copy */
 #include <asm/io.h>		/* phys_to_virt() */
-#include <linux/init.h>         /* __initfunc (when not using as a module) */
+#include <linux/init.h>         /* __init (when not using as a module) */
 
 
 /****** Defines & Macros ****************************************************/
@@ -124,7 +124,7 @@
 #ifdef MODULE
 int init_module (void)
 #else
-__initfunc(int wanpipe_init(void))
+int __init wanpipe_init(void)
 #endif
 {
 	int cnt, err = 0;
diff -urN linux/drivers/pnp/isapnp_proc.c linux-2.3.15-work/drivers/pnp/isapnp_proc.c
--- linux/drivers/pnp/isapnp_proc.c	Mon Aug 23 18:52:02 1999
+++ linux-2.3.15-work/drivers/pnp/isapnp_proc.c	Thu Aug 26 11:57:15 1999
@@ -230,7 +230,7 @@
 	NULL			/* permission */
 };
 
-__initfunc(static int isapnp_proc_init(void))
+static int __init isapnp_proc_init(void)
 {
 	struct proc_dir_entry *p;
 
diff -urN linux/drivers/sbus/audio/amd7930.c linux-2.3.15-work/drivers/sbus/audio/amd7930.c
--- linux/drivers/sbus/audio/amd7930.c	Thu Jan  7 17:21:53 1999
+++ linux-2.3.15-work/drivers/sbus/audio/amd7930.c	Thu Aug 26 11:56:05 1999
@@ -1608,7 +1608,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(int amd7930_init(void))
+int __init amd7930_init(void)
 #endif
 {
 	struct linux_sbus *bus;
diff -urN linux/drivers/sbus/audio/audio.c linux-2.3.15-work/drivers/sbus/audio/audio.c
--- linux/drivers/sbus/audio/audio.c	Fri Aug  6 19:58:00 1999
+++ linux-2.3.15-work/drivers/sbus/audio/audio.c	Thu Aug 26 11:56:19 1999
@@ -2098,7 +2098,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(int sparcaudio_init(void))
+int __init sparcaudio_init(void)
 #endif
 {
 #if defined (LINUX_VERSION_CODE) && LINUX_VERSION_CODE < 0x20100
diff -urN linux/drivers/sbus/audio/cs4231.c linux-2.3.15-work/drivers/sbus/audio/cs4231.c
--- linux/drivers/sbus/audio/cs4231.c	Fri Aug  6 19:58:00 1999
+++ linux-2.3.15-work/drivers/sbus/audio/cs4231.c	Thu Aug 26 11:56:33 1999
@@ -2292,7 +2292,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(int cs4231_init(void))
+int __init cs4231_init(void)
 #endif
 {
   struct linux_sbus *sbus;
diff -urN linux/drivers/sbus/audio/dbri.c linux-2.3.15-work/drivers/sbus/audio/dbri.c
--- linux/drivers/sbus/audio/dbri.c	Thu Jun 17 09:08:50 1999
+++ linux-2.3.15-work/drivers/sbus/audio/dbri.c	Thu Aug 26 11:56:47 1999
@@ -2356,7 +2356,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(int dbri_init(void))
+int __init dbri_init(void)
 #endif
 {
 	struct linux_sbus *bus;
diff -urN linux/drivers/sbus/audio/dmy.c linux-2.3.15-work/drivers/sbus/audio/dmy.c
--- linux/drivers/sbus/audio/dmy.c	Fri Apr 16 16:20:23 1999
+++ linux-2.3.15-work/drivers/sbus/audio/dmy.c	Thu Aug 26 11:57:01 1999
@@ -643,7 +643,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(int dummy_init(void))
+int __init dummy_init(void)
 #endif
 {
   num_drivers = 0;
diff -urN linux/drivers/sbus/char/bpp.c linux-2.3.15-work/drivers/sbus/char/bpp.c
--- linux/drivers/sbus/char/bpp.c	Fri Aug  6 19:58:00 1999
+++ linux-2.3.15-work/drivers/sbus/char/bpp.c	Thu Aug 26 11:55:45 1999
@@ -1050,7 +1050,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(int bpp_init(void))
+int __init bpp_init(void)
 #endif
 {
 	int rc;
diff -urN linux/drivers/sbus/char/envctrl.c linux-2.3.15-work/drivers/sbus/char/envctrl.c
--- linux/drivers/sbus/char/envctrl.c	Mon Nov 16 18:37:28 1998
+++ linux-2.3.15-work/drivers/sbus/char/envctrl.c	Thu Aug 26 11:52:13 1999
@@ -208,7 +208,7 @@
 	return error;
 }
 
-__initfunc(static int i2c_scan_bus(void))
+static int __init i2c_scan_bus(void)
 {
 	unsigned char dev;
 	int count = 0;
@@ -317,7 +317,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(int envctrl_init(void))
+int __init envctrl_init(void)
 #endif
 {
 #ifdef CONFIG_PCI
diff -urN linux/drivers/sbus/char/flash.c linux-2.3.15-work/drivers/sbus/char/flash.c
--- linux/drivers/sbus/char/flash.c	Tue Mar 16 00:11:30 1999
+++ linux-2.3.15-work/drivers/sbus/char/flash.c	Thu Aug 26 11:52:28 1999
@@ -152,7 +152,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(int flash_init(void))
+int __init flash_init(void)
 #endif
 {
 	struct linux_sbus *sbus;
diff -urN linux/drivers/sbus/char/openprom.c linux-2.3.15-work/drivers/sbus/char/openprom.c
--- linux/drivers/sbus/char/openprom.c	Mon Aug 24 21:14:09 1998
+++ linux-2.3.15-work/drivers/sbus/char/openprom.c	Thu Aug 26 11:52:43 1999
@@ -577,7 +577,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(int openprom_init(void))
+int __init openprom_init(void)
 #endif
 {
 	unsigned long flags;
diff -urN linux/drivers/sbus/char/pcikbd.c linux-2.3.15-work/drivers/sbus/char/pcikbd.c
--- linux/drivers/sbus/char/pcikbd.c	Wed Jun  9 22:44:25 1999
+++ linux-2.3.15-work/drivers/sbus/char/pcikbd.c	Thu Aug 26 11:53:55 1999
@@ -367,7 +367,7 @@
 		
 }
 
-__initfunc(static int pcikbd_wait_for_input(void))
+static int __init pcikbd_wait_for_input(void)
 {
 	int status, data;
 	unsigned long start = jiffies;
@@ -384,7 +384,7 @@
 	return -1;
 }
 
-__initfunc(static void pcikbd_write(int address, int data))
+static void __init pcikbd_write(int address, int data)
 {
 	int status;
 
@@ -436,7 +436,7 @@
 
 extern void (*kd_mksound)(unsigned int hz, unsigned int ticks);
 
-__initfunc(static char *do_pcikbd_init_hw(void))
+static char * __init do_pcikbd_init_hw(void)
 {
 
 	while(pcikbd_wait_for_input() != -1)
@@ -479,7 +479,7 @@
 	return NULL; /* success */
 }
 
-__initfunc(void pcikbd_init_hw(void))
+void __init pcikbd_init_hw(void)
 {
 	struct linux_ebus *ebus;
 	struct linux_ebus_device *edev;
@@ -711,7 +711,7 @@
  * Write to device & handle returned ack
  */
 
-__initfunc(static int aux_write_ack(int val))
+static int __init aux_write_ack(int val)
 {
 	aux_write_dev(val);
 	poll_aux_status();
@@ -943,7 +943,7 @@
 	PSMOUSE_MINOR, "ps2aux", &psaux_fops
 };
 
-__initfunc(int pcimouse_init(void))
+int __init pcimouse_init(void)
 {
 	struct linux_ebus *ebus;
 	struct linux_ebus_device *edev;
@@ -1027,7 +1027,7 @@
 }
 
 
-__initfunc(int ps2kbd_probe(unsigned long *memory_start))
+int __init ps2kbd_probe(unsigned long *memory_start)
 {
 	int pnode, enode, node, dnode, xnode;
 	int kbnode = 0, msnode = 0, bnode = 0;
diff -urN linux/drivers/sbus/char/rtc.c linux-2.3.15-work/drivers/sbus/char/rtc.c
--- linux/drivers/sbus/char/rtc.c	Wed Jun  9 22:44:25 1999
+++ linux-2.3.15-work/drivers/sbus/char/rtc.c	Thu Aug 26 11:51:44 1999
@@ -145,7 +145,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(int rtc_sun_init(void))
+int __init rtc_sun_init(void)
 #endif
 {
 	int error;
diff -urN linux/drivers/sbus/char/sab82532.c linux-2.3.15-work/drivers/sbus/char/sab82532.c
--- linux/drivers/sbus/char/sab82532.c	Sun Jul  4 17:53:12 1999
+++ linux-2.3.15-work/drivers/sbus/char/sab82532.c	Thu Aug 26 11:54:47 1999
@@ -2065,7 +2065,7 @@
  * sab82532_init() is called at boot-time to initialize the serial driver.
  * ---------------------------------------------------------------------
  */
-__initfunc(static int get_sab82532(unsigned long *memory_start))
+static int __init get_sab82532(unsigned long *memory_start)
 {
 	struct linux_ebus *ebus;
 	struct linux_ebus_device *edev = 0;
@@ -2126,14 +2126,14 @@
 	return 0;
 }
 
-__initfunc(static void
-sab82532_kgdb_hook(int line))
+static void __init
+sab82532_kgdb_hook(int line)
 {
 	prom_printf("sab82532: kgdb support is not implemented, yet\n");
 	prom_halt();
 }
 
-__initfunc(static inline void show_serial_version(void))
+static inline void __init show_serial_version(void)
 {
 	char *revision = "$Revision: 1.32 $";
 	char *version, *p;
@@ -2148,7 +2148,7 @@
 /*
  * The serial driver boot-time initialization code!
  */
-__initfunc(int sab82532_init(void))
+int __init sab82532_init(void)
 {
 	struct sab82532 *info;
 	int i;
@@ -2276,7 +2276,7 @@
 	return 0;
 }
 
-__initfunc(int sab82532_probe(unsigned long *memory_start))
+int __init sab82532_probe(unsigned long *memory_start)
 {
 	int node, enode, snode;
 	char model[32];
@@ -2561,7 +2561,7 @@
 	NULL
 };
 
-__initfunc(int sab82532_console_init(void))
+int __init sab82532_console_init(void)
 {
 	extern int con_is_present(void);
 
diff -urN linux/drivers/sbus/char/su.c linux-2.3.15-work/drivers/sbus/char/su.c
--- linux/drivers/sbus/char/su.c	Sun Jul  4 17:53:12 1999
+++ linux-2.3.15-work/drivers/sbus/char/su.c	Thu Aug 26 11:55:30 1999
@@ -2212,7 +2212,7 @@
  * number, and identifies which options were configured into this
  * driver.
  */
-__initfunc(static __inline__ void show_su_version(void))
+static __inline__ void __init show_su_version(void)
 {
 	char *revision = "$Revision: 1.22 $";
 	char *version, *p;
@@ -2418,7 +2418,7 @@
 /*
  * The serial driver boot-time initialization code!
  */
-__initfunc(int su_serial_init(void))
+int __init su_serial_init(void)
 {
 	int i;
 	struct su_struct *info;
@@ -2516,7 +2516,7 @@
 	return 0;
 }
 
-__initfunc(int su_kbd_ms_init(void))
+int __init su_kbd_ms_init(void)
 {
 	int i;
 	struct su_struct *info;
@@ -2559,7 +2559,7 @@
  * of device tree. 'su' may be found under obio, ebus, isa and pci.
  * We walk over the tree and find them wherever PROM hides them.
  */
-__initfunc(void su_probe_any(struct su_probe_scan *t, int sunode))
+void __init su_probe_any(struct su_probe_scan *t, int sunode)
 {
 	struct su_struct *info;
 	int len;
@@ -2590,7 +2590,7 @@
 	}
 }
 
-__initfunc(int su_probe (unsigned long *memory_start))
+int __init su_probe (unsigned long *memory_start)
 {
 	int node;
 	int len;
@@ -2792,7 +2792,7 @@
  *	- initialize the serial port
  *	Return non-zero if we didn't find a serial port.
  */
-__initfunc(static int serial_console_setup(struct console *co, char *options))
+static int __init serial_console_setup(struct console *co, char *options)
 {
 	struct su_struct *info;
 	unsigned cval;
@@ -2915,7 +2915,7 @@
 /*
  *	Register console.
  */
-__initfunc(int su_serial_console_init(void))
+int __init su_serial_console_init(void)
 {
 	extern int con_is_present(void);
 
diff -urN linux/drivers/sbus/char/sunkbd.c linux-2.3.15-work/drivers/sbus/char/sunkbd.c
--- linux/drivers/sbus/char/sunkbd.c	Tue Aug  3 06:07:16 1999
+++ linux-2.3.15-work/drivers/sbus/char/sunkbd.c	Thu Aug 26 11:02:41 1999
@@ -1212,7 +1212,7 @@
 
 extern void (*kd_mksound)(unsigned int hz, unsigned int ticks);
 
-__initfunc(int sun_kbd_init(void))
+int __init sun_kbd_init(void)
 {
 	int i, opt_node;
 	struct kbd_struct kbd0;
@@ -1502,7 +1502,7 @@
 	NULL,			/* revalidate */
 };
 
-__initfunc(void keyboard_zsinit(void (*put_char)(unsigned char)))
+void __init keyboard_zsinit(void (*put_char)(unsigned char))
 {
 	int timeout = 0;
 
diff -urN linux/drivers/sbus/char/sunmouse.c linux-2.3.15-work/drivers/sbus/char/sunmouse.c
--- linux/drivers/sbus/char/sunmouse.c	Tue Aug  3 06:07:16 1999
+++ linux-2.3.15-work/drivers/sbus/char/sunmouse.c	Thu Aug 26 11:51:29 1999
@@ -492,7 +492,7 @@
 	SUN_MOUSE_MINOR, "sunmouse", &sun_mouse_fops
 };
 
-__initfunc(int sun_mouse_init(void))
+int __init sun_mouse_init(void)
 {
 	if (!sunmouse.present)
 		return -ENODEV;
diff -urN linux/drivers/sbus/char/sunserial.c linux-2.3.15-work/drivers/sbus/char/sunserial.c
--- linux/drivers/sbus/char/sunserial.c	Tue Mar 16 00:11:30 1999
+++ linux-2.3.15-work/drivers/sbus/char/sunserial.c	Thu Aug 26 11:03:15 1999
@@ -20,13 +20,13 @@
 
 int serial_console;
 
-__initfunc(int con_is_present(void))
+int __init con_is_present(void)
 {
 	return serial_console ? 0 : 1;
 }
 
-__initfunc(static void
-nop_rs_kgdb_hook(int channel))
+static __init void
+nop_rs_kgdb_hook(int channel)
 {
 	printk("Oops: %s called\n", __FUNCTION__);
 }
@@ -63,13 +63,13 @@
 	return err;
 }
 
-__initfunc(void
-rs_kgdb_hook(int channel))
+void __init
+rs_kgdb_hook(int channel)
 {
 	rs_ops.rs_kgdb_hook(channel);
 }
 
-__initfunc(long serial_console_init(long kmem_start, long kmem_end))
+long __init serial_console_init(long kmem_start, long kmem_end)
 {
 	return kmem_start;
 }
@@ -352,8 +352,8 @@
 extern int ps2kbd_probe(unsigned long *);
 #endif
 
-__initfunc(unsigned long
-sun_serial_setup(unsigned long memory_start))
+unsigned long __init
+sun_serial_setup(unsigned long memory_start)
 {
 	int ret = 1;
 	
diff -urN linux/drivers/sbus/char/zs.c linux-2.3.15-work/drivers/sbus/char/zs.c
--- linux/drivers/sbus/char/zs.c	Tue Aug  3 06:07:16 1999
+++ linux-2.3.15-work/drivers/sbus/char/zs.c	Thu Aug 26 11:51:14 1999
@@ -1862,8 +1862,8 @@
  *       we have a special version for sun4u.
  */
 #ifdef __sparc_v9__
-__initfunc(static struct sun_zslayout *
-get_zs(int chip))
+static struct sun_zslayout * __init
+get_zs(int chip)
 {
 	unsigned int vaddr[2] = { 0, 0 };
 	unsigned long mapped_addr = 0;
@@ -1971,8 +1971,8 @@
 		return (struct sun_zslayout *) (unsigned long) vaddr[0];
 }
 #else /* !(__sparc_v9__) */
-__initfunc(static struct sun_zslayout *
-get_zs(int chip))
+static struct sun_zslayout * __init
+get_zs(int chip)
 {
 	struct linux_prom_irqs tmp_irq[2];
 	unsigned int paddr = 0;
@@ -2112,7 +2112,7 @@
 	write_zsreg(zs_soft[channel].zs_channel, R13, ((brg >> 8) & 0xff));
 }
 
-__initfunc(int zs_probe (unsigned long *memory_start))
+int __init zs_probe (unsigned long *memory_start)
 {
 	char *p;
 	int node;
@@ -2265,7 +2265,7 @@
 	restore_flags(flags);
 }
 
-__initfunc(int zs_init(void))
+int __init zs_init(void)
 {
 	int channel, brg, i;
 	unsigned long flags;
@@ -2534,8 +2534,8 @@
  * for /dev/ttyb which is determined in setup_arch() from the
  * boot command line flags.
  */
-__initfunc(static void
-zs_kgdb_hook(int tty_num))
+static void __init
+zs_kgdb_hook(int tty_num)
 {
 	int chip = 0;
 
@@ -2647,8 +2647,8 @@
 	return MKDEV(TTY_MAJOR, 64 + con->index);
 }
 
-__initfunc(static int
-zs_console_setup(struct console *con, char *options))
+static int __init
+zs_console_setup(struct console *con, char *options)
 {
 	struct sun_serial *info;
 	int i, brg, baud;
@@ -2729,8 +2729,8 @@
 	NULL
 };
 
-__initfunc(static int
-zs_console_init(void))
+static int __init
+zs_console_init(void)
 {
 	extern int con_is_present(void);
 
diff -urN linux/drivers/sbus/dvma.c linux-2.3.15-work/drivers/sbus/dvma.c
--- linux/drivers/sbus/dvma.c	Wed Jun  2 07:25:48 1999
+++ linux-2.3.15-work/drivers/sbus/dvma.c	Thu Aug 26 11:01:44 1999
@@ -29,8 +29,8 @@
 	return;
 }
 
-__initfunc(void
-init_one_dvma(struct Linux_SBus_DMA *dma, int num_dma))
+void __init
+init_one_dvma(struct Linux_SBus_DMA *dma, int num_dma)
 {
 	printk("dma%d: ", num_dma);
 	
@@ -75,8 +75,8 @@
 }
 
 /* Probe this SBus DMA module(s) */
-__initfunc(void
-dvma_init(struct linux_sbus *sbus))
+void __init
+dvma_init(struct linux_sbus *sbus)
 {
 	struct linux_sbus_device *this_dev;
 	struct Linux_SBus_DMA *dma;
@@ -133,7 +133,7 @@
 
 #include <asm/sun4paddr.h>
 
-__initfunc(void sun4_dvma_init(void))
+void __init sun4_dvma_init(void)
 {
 	struct Linux_SBus_DMA *dma;
 	struct Linux_SBus_DMA *dchain;
diff -urN linux/drivers/sbus/sbus.c linux-2.3.15-work/drivers/sbus/sbus.c
--- linux/drivers/sbus/sbus.c	Tue Aug  3 06:07:16 1999
+++ linux-2.3.15-work/drivers/sbus/sbus.c	Thu Aug 26 11:02:12 1999
@@ -40,8 +40,8 @@
 
 /* #define DEBUG_FILL */
 
-__initfunc(static void
-fill_sbus_device(int nd, struct linux_sbus_device *sbus_dev))
+static void __init
+fill_sbus_device(int nd, struct linux_sbus_device *sbus_dev)
 {
 	int grrr, len;
 	unsigned long dev_base_addr, base;
@@ -210,9 +210,9 @@
 extern int aurora_init(void);
 #endif
 
-__initfunc(static void
+static void __init
 sbus_do_child_siblings(int start_node, struct linux_sbus_device *child,
-		       struct linux_sbus *sbus))
+		       struct linux_sbus *sbus)
 {
 	struct linux_sbus_device *this_dev = child;
 	int this_node = start_node;
@@ -240,7 +240,7 @@
 	}
 }
 
-__initfunc(void sbus_init(void))
+void __init sbus_init(void)
 {
 	register int nd, this_sbus, sbus_devs, topnd, iommund;
 	unsigned int sbus_clock;
diff -urN linux/drivers/scsi/atari_NCR5380.c linux-2.3.15-work/drivers/scsi/atari_NCR5380.c
--- linux/drivers/scsi/atari_NCR5380.c	Wed Aug 18 18:00:52 1999
+++ linux-2.3.15-work/drivers/scsi/atari_NCR5380.c	Thu Aug 26 10:40:04 1999
@@ -323,7 +323,7 @@
 static TAG_ALLOC TagAlloc[8][8]; /* 8 targets and 8 LUNs */
 
 
-__initfunc(static void init_tags( void ))
+static void __init init_tags( void )
 {
     int target, lun;
     TAG_ALLOC *ta;
@@ -684,7 +684,7 @@
  * Inputs : instance, pointer to this instance.  Unused.
  */
 
-__initfunc(static void NCR5380_print_options (struct Scsi_Host *instance))
+static void __init NCR5380_print_options (struct Scsi_Host *instance)
 {
     printk(" generic options"
 #ifdef AUTOSENSE 
@@ -848,7 +848,7 @@
  * 
  */
 
-__initfunc(static void NCR5380_init (struct Scsi_Host *instance, int flags))
+static void __init NCR5380_init (struct Scsi_Host *instance, int flags)
 {
     int i;
     SETUP_HOSTDATA(instance);
diff -urN linux/drivers/scsi/esp.c linux-2.3.15-work/drivers/scsi/esp.c
--- linux/drivers/scsi/esp.c	Tue Mar 16 00:11:31 1999
+++ linux-2.3.15-work/drivers/scsi/esp.c	Thu Aug 26 10:39:35 1999
@@ -671,9 +671,9 @@
 	trash = eregs->esp_intrpt;
 }
 
-__initfunc(int detect_one_esp
+int detect_one_esp __init
 (Scsi_Host_Template *tpnt, struct linux_sbus_device *esp_dev, struct linux_sbus_device *espdma,
- struct linux_sbus *sbus, int id, int hme))
+ struct linux_sbus *sbus, int id, int hme)
 {
 	struct Sparc_ESP *esp, *elink;
 	struct Scsi_Host *esp_host;
@@ -1022,7 +1022,7 @@
 
 #include <asm/sun4paddr.h>
 
-__initfunc(int esp_detect(Scsi_Host_Template *tpnt))
+int __init esp_detect(Scsi_Host_Template *tpnt)
 {
 	static struct linux_sbus_device esp_dev;
 	int esps_in_use = 0;
@@ -1044,7 +1044,7 @@
 
 #else /* !CONFIG_SUN4 */
 
-__initfunc(int esp_detect(Scsi_Host_Template *tpnt))
+int __init esp_detect(Scsi_Host_Template *tpnt)
 {
 	struct linux_sbus *sbus;
 	struct linux_sbus_device *esp_dev, *sbdev_iter;
diff -urN linux/drivers/scsi/fcal.c linux-2.3.15-work/drivers/scsi/fcal.c
--- linux/drivers/scsi/fcal.c	Tue Mar 16 00:11:31 1999
+++ linux-2.3.15-work/drivers/scsi/fcal.c	Thu Aug 26 10:41:48 1999
@@ -90,7 +90,7 @@
 
 /* Detect all FC Arbitrated Loops attached to the machine.
    fc4 module has done all the work for us... */
-__initfunc(int fcal_detect(Scsi_Host_Template *tpnt))
+int __init fcal_detect(Scsi_Host_Template *tpnt)
 {
 	int nfcals = 0;
 	fc_channel *fc;
diff -urN linux/drivers/scsi/gdth.c linux-2.3.15-work/drivers/scsi/gdth.c
--- linux/drivers/scsi/gdth.c	Mon Aug 23 19:15:53 1999
+++ linux-2.3.15-work/drivers/scsi/gdth.c	Thu Aug 26 10:38:59 1999
@@ -476,7 +476,7 @@
     DUN,DUN,DUN,DUN,DUN,DUN,DUN,DUN,DUN,DUN,DUN,DUN,DUN,DUN,DUN,DUN
 };
 
-/* __initfunc, __initdata macros */
+/* __init, __initdata macros */
 #if LINUX_VERSION_CODE >= 0x020126
 #include <linux/init.h>
 #else
diff -urN linux/drivers/scsi/pluto.c linux-2.3.15-work/drivers/scsi/pluto.c
--- linux/drivers/scsi/pluto.c	Wed May 12 16:41:15 1999
+++ linux-2.3.15-work/drivers/scsi/pluto.c	Thu Aug 26 10:40:57 1999
@@ -58,18 +58,18 @@
 
 static int pluto_encode_addr(Scsi_Cmnd *SCpnt, u16 *addr, fc_channel *fc, fcp_cmnd *fcmd);
 
-__initfunc(static void pluto_detect_timeout(unsigned long data))
+static void __init pluto_detect_timeout(unsigned long data)
 {
 	PLND(("Timeout\n"))
 	up(&fc_sem);
 }
 
-__initfunc(static void pluto_detect_done(Scsi_Cmnd *SCpnt))
+static void __init pluto_detect_done(Scsi_Cmnd *SCpnt)
 {
 	/* Do nothing */
 }
 
-__initfunc(static void pluto_detect_scsi_done(Scsi_Cmnd *SCpnt))
+static void __init pluto_detect_scsi_done(Scsi_Cmnd *SCpnt)
 {
 	SCpnt->request.rq_status = RQ_SCSI_DONE;
 	PLND(("Detect done %08lx\n", (long)SCpnt))
@@ -92,7 +92,7 @@
 
 /* Detect all SSAs attached to the machine.
    To be fast, do it on all online FC channels at the same time. */
-__initfunc(int pluto_detect(Scsi_Host_Template *tpnt))
+int __init pluto_detect(Scsi_Host_Template *tpnt)
 {
 	int i, retry, nplutos;
 	fc_channel *fc;
diff -urN linux/drivers/scsi/qlogicpti.c linux-2.3.15-work/drivers/scsi/qlogicpti.c
--- linux/drivers/scsi/qlogicpti.c	Tue Mar 16 00:11:31 1999
+++ linux-2.3.15-work/drivers/scsi/qlogicpti.c	Thu Aug 26 10:40:26 1999
@@ -353,7 +353,7 @@
 
 #define PTI_RESET_LIMIT 400
 
-__initfunc(static int qlogicpti_load_firmware(struct qlogicpti *qpti))
+static int __init qlogicpti_load_firmware(struct qlogicpti *qpti)
 {
 	struct qlogicpti_regs *qregs = qpti->qregs;
 	unsigned short csum = 0;
@@ -583,7 +583,7 @@
 #endif
 
 /* Detect all PTI Qlogic ISP's in the machine. */
-__initfunc(int qlogicpti_detect(Scsi_Host_Template *tpnt))
+int __init qlogicpti_detect(Scsi_Host_Template *tpnt)
 {
 	struct qlogicpti *qpti, *qlink;
 	struct Scsi_Host *qpti_host;
diff -urN linux/drivers/scsi/sgiwd93.c linux-2.3.15-work/drivers/scsi/sgiwd93.c
--- linux/drivers/scsi/sgiwd93.c	Fri May  8 08:22:12 1998
+++ linux-2.3.15-work/drivers/scsi/sgiwd93.c	Thu Aug 26 10:41:35 1999
@@ -217,7 +217,7 @@
 	hcp->desc.pnext = PHYSADDR(buf);
 }
 
-__initfunc(int sgiwd93_detect(Scsi_Host_Template *HPsUX))
+int __init sgiwd93_detect(Scsi_Host_Template *HPsUX)
 {
 	static unsigned char called = 0;
 	struct hpc3_scsiregs *hregs = &hpc3c0->scsi_chan0;
diff -urN linux/drivers/scsi/st.c linux-2.3.15-work/drivers/scsi/st.c
--- linux/drivers/scsi/st.c	Mon Aug  9 18:25:01 1999
+++ linux-2.3.15-work/drivers/scsi/st.c	Thu Aug 26 10:38:08 1999
@@ -3499,7 +3499,7 @@
 
 static int st_registered = 0;
 
-/* Driver initialization (not __initfunc because may be called later) */
+/* Driver initialization (not __init because may be called later) */
 static int st_init()
 {
   int i;
diff -urN linux/drivers/scsi/sym53c8xx.c linux-2.3.15-work/drivers/scsi/sym53c8xx.c
--- linux/drivers/scsi/sym53c8xx.c	Wed Aug  4 18:54:13 1999
+++ linux-2.3.15-work/drivers/scsi/sym53c8xx.c	Thu Aug 26 11:26:10 1999
@@ -137,6 +137,9 @@
 #ifndef	__initfunc
 #define	__initfunc(__arginit) __arginit
 #endif
+#ifndef __init
+#define __init
+#endif
 #endif
 
 #if LINUX_VERSION_CODE <= LinuxVersionCode(2,1,92)
@@ -576,9 +579,8 @@
 #define pcivtobus(p)			(p)
 
 #if !defined(NCR_IOMAPPED) || defined(__i386__)
-__initfunc(
-static u_long remap_pci_mem(u_long base, u_long size)
-)
+
+static u_long __init remap_pci_mem(u_long base, u_long size)
 {
 	u_long page_base	= ((u_long) base) & PAGE_MASK;
 	u_long page_offs	= ((u_long) base) - page_base;
@@ -587,9 +589,7 @@
 	return page_remapped? (page_remapped + page_offs) : 0UL;
 }
 
-__initfunc(
-static void unmap_pci_mem(u_long vaddr, u_long size)
-)
+static void __init unmap_pci_mem(u_long vaddr, u_long size)
 {
 	if (vaddr)
 		iounmap((void *) (vaddr & PAGE_MASK));
@@ -3802,9 +3802,7 @@
 **==========================================================
 */
 
-__initfunc(
-void ncr_script_fill (struct script * scr, struct scripth * scrh)
-)
+void __init ncr_script_fill (struct script * scr, struct scripth * scrh)
 {
 	int	i;
 	ncrcmd	*p;
@@ -3868,9 +3866,7 @@
 **==========================================================
 */
 
-__initfunc(
-static void ncr_script_copy_and_bind (ncb_p np,ncrcmd *src,ncrcmd *dst,int len)
-)
+static void __init ncr_script_copy_and_bind (ncb_p np,ncrcmd *src,ncrcmd *dst,int len)
 {
 	ncrcmd  opcode, new, old, tmp1, tmp2;
 	ncrcmd	*start, *end;
@@ -4138,10 +4134,8 @@
 **	Get target set-up from Symbios format NVRAM.
 */
 
-__initfunc(
-static void
+static void __init
 	ncr_Symbios_setup_target(ncb_p np, int target, Symbios_nvram *nvram)
-)
 {
 	tcb_p tp = &np->target[target];
 	Symbios_target *tn = &nvram->target[target];
@@ -4161,10 +4155,8 @@
 **	Get target set-up from Tekram format NVRAM.
 */
 
-__initfunc(
-static void
+static void __init
 	ncr_Tekram_setup_target(ncb_p np, int target, Tekram_nvram *nvram)
-)
 {
 	tcb_p tp = &np->target[target];
 	struct Tekram_target *tn = &nvram->target[target];
@@ -4190,9 +4182,7 @@
 }
 #endif /* SCSI_NCR_NVRAM_SUPPORT */
 
-__initfunc(
-static int ncr_prepare_setting(ncb_p np, ncr_nvram *nvram)
-)
+static int __init ncr_prepare_setting(ncb_p np, ncr_nvram *nvram)
 {
 	u_char	burst_max;
 	u_long	period;
@@ -4514,9 +4504,7 @@
 
 #ifdef SCSI_NCR_DEBUG_NVRAM
 
-__initfunc(
-void ncr_display_Symbios_nvram(ncb_p np, Symbios_nvram *nvram)
-)
+void __init ncr_display_Symbios_nvram(ncb_p np, Symbios_nvram *nvram)
 {
 	int i;
 
@@ -4546,9 +4534,7 @@
 
 static u_char Tekram_boot_delay[7] __initdata = {3, 5, 10, 20, 30, 60, 120};
 
-__initfunc(
-void ncr_display_Tekram_nvram(ncb_p np, Tekram_nvram *nvram)
-)
+void __init ncr_display_Tekram_nvram(ncb_p np, Tekram_nvram *nvram)
 {
 	int i, tags, boot_delay;
 	char *rem;
@@ -4607,9 +4593,7 @@
 **	start the timer daemon.
 */
 
-__initfunc(
-static int ncr_attach (Scsi_Host_Template *tpnt, int unit, ncr_device *device)
-)
+static int __init ncr_attach (Scsi_Host_Template *tpnt, int unit, ncr_device *device)
 {
         struct host_data *host_data;
 	ncb_p np = 0;
@@ -9202,9 +9186,7 @@
 */
 
 #ifndef NCR_IOMAPPED
-__initfunc(
-static int ncr_regtest (struct ncb* np)
-)
+static int __init ncr_regtest (struct ncb* np)
 {
 	register volatile u_int32 data;
 	/*
@@ -9228,9 +9210,7 @@
 }
 #endif
 
-__initfunc(
-static int ncr_snooptest (struct ncb* np)
-)
+static int __init ncr_snooptest (struct ncb* np)
 {
 	u_int32	ncr_rd, ncr_wr, ncr_bk, host_rd, host_wr, pc;
 	int	i, err=0;
@@ -9460,9 +9440,7 @@
 /*
  *	calculate NCR SCSI clock frequency (in KHz)
  */
-__initfunc(
-static unsigned ncrgetfreq (ncb_p np, int gen)
-)
+static unsigned __init ncrgetfreq (ncb_p np, int gen)
 {
 	unsigned ms = 0;
 
@@ -9510,9 +9488,7 @@
 /*
  *	Get/probe NCR SCSI clock frequency
  */
-__initfunc(
-static void ncr_getclock (ncb_p np, int mult)
-)
+static void __init ncr_getclock (ncb_p np, int mult)
 {
 	unsigned char scntl3 = INB(nc_scntl3);
 	unsigned char stest1 = INB(nc_stest1);
@@ -9644,9 +9620,7 @@
 #define	ARG_SEP	','
 #endif
 
-__initfunc(
-static int get_setup_token(char *p)
-)
+static int __init get_setup_token(char *p)
 {
 	char *cur = setup_token;
 	char *pc;
@@ -9663,9 +9637,7 @@
 }
 
 
-__initfunc(
-void sym53c8xx_setup(char *str, int *ints)
-)
+void __init sym53c8xx_setup(char *str, int *ints)
 {
 #ifdef SCSI_NCR_BOOT_COMMAND_LINE_SUPPORT
 	char *cur = str;
@@ -9799,9 +9771,7 @@
 **   Returns the number of boards successfully attached.
 */
 
-__initfunc(
-static void ncr_print_driver_setup(void)
-)
+static void __init ncr_print_driver_setup(void)
 {
 #define YesNo(y)	y ? 'y' : 'n'
 	printk (NAME53C8XX ": setup=disc:%c,specf:%d,ultra:%d,tags:%d,sync:%d,"
@@ -9860,9 +9830,7 @@
 #define	SCSI_NCR_MAX_PQS_BUS	16
 static int pqs_bus[SCSI_NCR_MAX_PQS_BUS] __initdata = { 0 };
 
-__initfunc(
-static void ncr_detect_pqs_pds(void)
-)
+static void __init ncr_detect_pqs_pds(void)
 {
 	short index;
 
@@ -9900,9 +9868,7 @@
 **    the the order they are detected.
 **===================================================================
 */
-__initfunc(
-int sym53c8xx_detect(Scsi_Host_Template *tpnt)
-)
+int __init sym53c8xx_detect(Scsi_Host_Template *tpnt)
 {
 	int i, j, chips, hosts, count;
 	u_char bus, device_fn;
@@ -10090,10 +10056,8 @@
 **===================================================================
 */
 #if LINUX_VERSION_CODE <= LinuxVersionCode(2,1,92)
-__initfunc(
-static int 
+static int __init
 pci_read_base_address(u_char bus, u_char device_fn, int offset, u_long *base)
-)
 {
 	u_int32 tmp;
 
@@ -10110,10 +10074,8 @@
 	return offset;
 }
 #else	/* LINUX_VERSION_CODE > LinuxVersionCode(2,1,92) */
-__initfunc(
-static int 
+static int __init
 pci_get_base_address(struct pci_dev *pdev, int index, u_long *base)
-)
 {
 	/* FIXME! This is just unbelieably horrible backwards compatibility code */
 	struct resource *res = pdev->resource + index;
@@ -10132,10 +10094,8 @@
 **   been detected.
 **===================================================================
 */
-__initfunc(
-static int sym53c8xx_pci_init(Scsi_Host_Template *tpnt,
+static int __init sym53c8xx_pci_init(Scsi_Host_Template *tpnt,
 			      uchar bus, uchar device_fn, ncr_device *device)
-)
 {
 	u_short vendor_id, device_id, command;
 	u_char cache_line_size, latency_timer;
@@ -10470,7 +10430,7 @@
 *===================================================================
 */
 #ifdef SCSI_NCR_NVRAM_SUPPORT
-__initfunc(static void ncr_get_nvram(ncr_device *devp, ncr_nvram *nvp))
+static void __init ncr_get_nvram(ncr_device *devp, ncr_nvram *nvp)
 {
 	devp->nvram = nvp;
 	if (!nvp)
@@ -11335,9 +11295,7 @@
 static void nvram_stop(ncr_slot *np, u_char *gpreg);
 static void nvram_setBit(ncr_slot *np, u_char write_bit, u_char *gpreg, int bit_mode);
 
-__initfunc(
-static int ncr_get_Symbios_nvram (ncr_slot *np, Symbios_nvram *nvram)
-)
+static int __init ncr_get_Symbios_nvram (ncr_slot *np, Symbios_nvram *nvram)
 {
 	static u_char Symbios_trailer[6] = {0xfe, 0xfe, 0, 0, 0, 0};
 	u_char	gpcntl, gpreg;
@@ -11426,9 +11384,7 @@
 /*
  * Read Symbios NvRAM data and compute checksum.
  */
-__initfunc(
-static u_short nvram_read_data(ncr_slot *np, u_char *data, int len, u_char *gpreg, u_char *gpcntl)
-)
+static u_short __init nvram_read_data(ncr_slot *np, u_char *data, int len, u_char *gpreg, u_char *gpcntl)
 {
 	int	x;
 	u_short	csum;
@@ -11445,9 +11401,7 @@
 /*
  * Send START condition to NVRAM to wake it up.
  */
-__initfunc(
-static void nvram_start(ncr_slot *np, u_char *gpreg)
-)
+static void __init nvram_start(ncr_slot *np, u_char *gpreg)
 {
 	nvram_setBit(np, 1, gpreg, SET_BIT);
 	nvram_setBit(np, 0, gpreg, SET_CLK);
@@ -11459,9 +11413,7 @@
  * WRITE a byte to the NVRAM and then get an ACK to see it was accepted OK,
  * GPIO0 must already be set as an output
  */
-__initfunc(
-static void nvram_write_byte(ncr_slot *np, u_char *ack_data, u_char write_data, u_char *gpreg, u_char *gpcntl)
-)
+static void __init nvram_write_byte(ncr_slot *np, u_char *ack_data, u_char write_data, u_char *gpreg, u_char *gpcntl)
 {
 	int x;
 	
@@ -11475,9 +11427,7 @@
  * READ a byte from the NVRAM and then send an ACK to say we have got it,
  * GPIO0 must already be set as an input
  */
-__initfunc(
-static void nvram_read_byte(ncr_slot *np, u_char *read_data, u_char ack_data, u_char *gpreg, u_char *gpcntl)
-)
+static void __init nvram_read_byte(ncr_slot *np, u_char *read_data, u_char ack_data, u_char *gpreg, u_char *gpcntl)
 {
 	int x;
 	u_char read_bit;
@@ -11495,9 +11445,7 @@
  * Output an ACK to the NVRAM after reading,
  * change GPIO0 to output and when done back to an input
  */
-__initfunc(
-static void nvram_writeAck(ncr_slot *np, u_char write_bit, u_char *gpreg, u_char *gpcntl)
-)
+static void __init nvram_writeAck(ncr_slot *np, u_char write_bit, u_char *gpreg, u_char *gpcntl)
 {
 	OUTB (nc_gpcntl, *gpcntl & 0xfe);
 	nvram_doBit(np, 0, write_bit, gpreg);
@@ -11508,9 +11456,7 @@
  * Input an ACK from NVRAM after writing,
  * change GPIO0 to input and when done back to an output
  */
-__initfunc(
-static void nvram_readAck(ncr_slot *np, u_char *read_bit, u_char *gpreg, u_char *gpcntl)
-)
+static void __init nvram_readAck(ncr_slot *np, u_char *read_bit, u_char *gpreg, u_char *gpcntl)
 {
 	OUTB (nc_gpcntl, *gpcntl | 0x01);
 	nvram_doBit(np, read_bit, 1, gpreg);
@@ -11521,9 +11467,7 @@
  * Read or write a bit to the NVRAM,
  * read if GPIO0 input else write if GPIO0 output
  */
-__initfunc(
-static void nvram_doBit(ncr_slot *np, u_char *read_bit, u_char write_bit, u_char *gpreg)
-)
+static void __init nvram_doBit(ncr_slot *np, u_char *read_bit, u_char write_bit, u_char *gpreg)
 {
 	nvram_setBit(np, write_bit, gpreg, SET_BIT);
 	nvram_setBit(np, 0, gpreg, SET_CLK);
@@ -11536,9 +11480,7 @@
 /*
  * Send STOP condition to NVRAM - puts NVRAM to sleep... ZZzzzz!!
  */
-__initfunc(
-static void nvram_stop(ncr_slot *np, u_char *gpreg)
-)
+static void __init nvram_stop(ncr_slot *np, u_char *gpreg)
 {
 	nvram_setBit(np, 0, gpreg, SET_CLK);
 	nvram_setBit(np, 1, gpreg, SET_BIT);
@@ -11547,9 +11489,7 @@
 /*
  * Set/clear data/clock bit in GPIO0
  */
-__initfunc(
-static void nvram_setBit(ncr_slot *np, u_char write_bit, u_char *gpreg, int bit_mode)
-)
+static void __init nvram_setBit(ncr_slot *np, u_char write_bit, u_char *gpreg, int bit_mode)
 {
 	UDELAY (5);
 	switch (bit_mode){
@@ -11600,9 +11540,7 @@
 static void Tnvram_Stop(ncr_slot *np, u_char *gpreg);
 static void Tnvram_Clk(ncr_slot *np, u_char *gpreg);
 
-__initfunc(
-static int ncr_get_Tekram_nvram (ncr_slot *np, Tekram_nvram *nvram)
-)
+static int __init ncr_get_Tekram_nvram (ncr_slot *np, Tekram_nvram *nvram)
 {
 	u_char gpcntl, gpreg;
 	u_char old_gpcntl, old_gpreg;
@@ -11637,9 +11575,7 @@
 /*
  * Read Tekram NvRAM data and compute checksum.
  */
-__initfunc(
-static u_short Tnvram_read_data(ncr_slot *np, u_short *data, int len, u_char *gpreg)
-)
+static u_short __init Tnvram_read_data(ncr_slot *np, u_short *data, int len, u_char *gpreg)
 {
 	u_char	read_bit;
 	u_short	csum;
@@ -11664,9 +11600,7 @@
 /*
  * Send read command and address to NVRAM
  */
-__initfunc(
-static void Tnvram_Send_Command(ncr_slot *np, u_short write_data, u_char *read_bit, u_char *gpreg)
-)
+static void __init Tnvram_Send_Command(ncr_slot *np, u_short write_data, u_char *read_bit, u_char *gpreg)
 {
 	int x;
 
@@ -11680,9 +11614,7 @@
 /*
  * READ a byte from the NVRAM
  */
-__initfunc(
-static void Tnvram_Read_Word(ncr_slot *np, u_short *nvram_data, u_char *gpreg)
-)
+static void __init Tnvram_Read_Word(ncr_slot *np, u_short *nvram_data, u_char *gpreg)
 {
 	int x;
 	u_char read_bit;
@@ -11701,9 +11633,7 @@
 /* 
  * Read bit from NVRAM
  */
-__initfunc(
-static void Tnvram_Read_Bit(ncr_slot *np, u_char *read_bit, u_char *gpreg)
-)
+static void __init Tnvram_Read_Bit(ncr_slot *np, u_char *read_bit, u_char *gpreg)
 {
 	UDELAY (2);
 	Tnvram_Clk(np, gpreg);
@@ -11713,9 +11643,7 @@
 /*
  * Write bit to GPIO0
  */
-__initfunc(
-static void Tnvram_Write_Bit(ncr_slot *np, u_char write_bit, u_char *gpreg)
-)
+static void __init Tnvram_Write_Bit(ncr_slot *np, u_char write_bit, u_char *gpreg)
 {
 	if (write_bit & 0x01)
 		*gpreg |= 0x02;
@@ -11733,9 +11661,7 @@
 /*
  * Send STOP condition to NVRAM - puts NVRAM to sleep... ZZZzzz!!
  */
-__initfunc(
-static void Tnvram_Stop(ncr_slot *np, u_char *gpreg)
-)
+static void __init Tnvram_Stop(ncr_slot *np, u_char *gpreg)
 {
 	*gpreg &= 0xef;
 	OUTB (nc_gpreg, *gpreg);
@@ -11747,9 +11673,7 @@
 /*
  * Pulse clock bit in GPIO0
  */
-__initfunc(
-static void Tnvram_Clk(ncr_slot *np, u_char *gpreg)
-)
+static void __init Tnvram_Clk(ncr_slot *np, u_char *gpreg)
 {
 	OUTB (nc_gpreg, *gpreg | 0x04);
 	UDELAY (2);
diff -urN linux/drivers/sgi/char/ds1286.c linux-2.3.15-work/drivers/sgi/char/ds1286.c
--- linux/drivers/sgi/char/ds1286.c	Sat Jun 26 01:39:34 1999
+++ linux-2.3.15-work/drivers/sgi/char/ds1286.c	Thu Aug 26 11:58:17 1999
@@ -392,7 +392,7 @@
 	&ds1286_fops
 };
 
-__initfunc(int ds1286_init(void))
+int __init ds1286_init(void)
 {
 	printk(KERN_INFO "DS1286 Real Time Clock Driver v%s\n", DS1286_VERSION);
 	misc_register(&ds1286_dev);
diff -urN linux/drivers/sgi/char/graphics.c linux-2.3.15-work/drivers/sgi/char/graphics.c
--- linux/drivers/sgi/char/graphics.c	Fri Jul  2 23:15:51 1999
+++ linux-2.3.15-work/drivers/sgi/char/graphics.c	Thu Aug 26 12:06:48 1999
@@ -324,13 +324,13 @@
 };
 
 /* This is called later from the misc-init routine */
-__initfunc(void gfx_register (void))
+void __init gfx_register (void)
 {
 	misc_register (&dev_graphics);
 	misc_register (&dev_opengl);
 }
 
-__initfunc(void gfx_init (const char **name))
+void __init gfx_init (const char **name)
 {
 #if 0
 	struct console_ops *console;
diff -urN linux/drivers/sgi/char/sgiserial.c linux-2.3.15-work/drivers/sgi/char/sgiserial.c
--- linux/drivers/sgi/char/sgiserial.c	Tue Jun 29 17:22:08 1999
+++ linux-2.3.15-work/drivers/sgi/char/sgiserial.c	Thu Aug 26 12:06:24 1999
@@ -2045,7 +2045,7 @@
 }
 
 
-__initfunc(static int zs_console_setup(struct console *con, char *options))
+static int __init zs_console_setup(struct console *con, char *options)
 {
 	struct sgi_serial *info;
 	int	baud = 9600;
@@ -2185,7 +2185,7 @@
 /*
  *	Register console.
  */
-__initfunc (long serial_console_init(long kmem_start, long kmem_end))
+long __init serial_console_init(long kmem_start, long kmem_end)
 {
 	register_console(&sgi_console_driver);
 	return kmem_start;
diff -urN linux/drivers/sound/cmpci.c linux-2.3.15-work/drivers/sound/cmpci.c
--- linux/drivers/sound/cmpci.c	Thu Aug  5 23:11:52 1999
+++ linux-2.3.15-work/drivers/sound/cmpci.c	Thu Aug 26 10:46:55 1999
@@ -2176,9 +2176,9 @@
 };
 
 #ifdef MODULE
-__initfunc(int init_module(void))
+int __init init_module(void)
 #else
-__initfunc(int init_cmpci(void))
+int __init init_cmpci(void)
 #endif
 {
 	struct cm_state *s;
diff -urN linux/drivers/sound/msnd.h linux-2.3.15-work/drivers/sound/msnd.h
--- linux/drivers/sound/msnd.h	Sat May 15 23:05:37 1999
+++ linux-2.3.15-work/drivers/sound/msnd.h	Thu Aug 26 11:46:24 1999
@@ -163,6 +163,7 @@
 #ifdef LINUX20
 #  define __initfunc(f)				f
 #  define __initdata				/* nothing */
+#  define __init                                /* nothing */
 #  define spin_lock_irqsave(junk,flags)		do { save_flags(flags); cli(); } while (0)
 #  define spin_unlock_irqrestore(junk,flags)	do { restore_flags(flags); } while (0)
 #endif
diff -urN linux/drivers/video/fbcon.c linux-2.3.15-work/drivers/video/fbcon.c
--- linux/drivers/video/fbcon.c	Mon Aug  9 19:38:10 1999
+++ linux-2.3.15-work/drivers/video/fbcon.c	Thu Aug 26 11:57:30 1999
@@ -246,7 +246,7 @@
 
 struct display_switch fbcon_dummy;
 
-/* NOTE: fbcon cannot be __initfunc: it may be called from take_over_console later */
+/* NOTE: fbcon cannot be __init: it may be called from take_over_console later */
 
 static const char *fbcon_startup(void)
 {
diff -urN linux/drivers/video/newport_con.c linux-2.3.15-work/drivers/video/newport_con.c
--- linux/drivers/video/newport_con.c	Sat Jun 26 01:37:52 1999
+++ linux-2.3.15-work/drivers/video/newport_con.c	Thu Aug 26 11:57:58 1999
@@ -267,7 +267,7 @@
 #ifdef MODULE
 static const char *newport_startup(void)
 #else
-__initfunc(static const char *newport_startup(void))
+static const char * __init newport_startup(void)
 #endif
 {
     struct newport_regs *p;
diff -urN linux/drivers/video/tgafb.c linux-2.3.15-work/drivers/video/tgafb.c
--- linux/drivers/video/tgafb.c	Thu Aug 19 19:01:00 1999
+++ linux-2.3.15-work/drivers/video/tgafb.c	Thu Aug 26 11:57:43 1999
@@ -1027,7 +1027,7 @@
      *  Initialisation
      */
 
-__initfunc(int tgafb_init(void))
+int __init tgafb_init(void)
 {
     struct pci_dev *pdev;
 
diff -urN linux/fs/adfs/super.c linux-2.3.15-work/fs/adfs/super.c
--- linux/fs/adfs/super.c	Tue Jun  8 18:47:58 1999
+++ linux-2.3.15-work/fs/adfs/super.c	Thu Aug 26 09:55:22 1999
@@ -385,7 +385,7 @@
 	"adfs", FS_REQUIRES_DEV, adfs_read_super, NULL
 };
 
-__initfunc(int init_adfs_fs(void))
+int __init init_adfs_fs(void)
 {
 	return register_filesystem(&adfs_fs_type);
 }
diff -urN linux/fs/affs/super.c linux-2.3.15-work/fs/affs/super.c
--- linux/fs/affs/super.c	Tue Jun  8 18:47:58 1999
+++ linux-2.3.15-work/fs/affs/super.c	Thu Aug 26 09:53:43 1999
@@ -688,7 +688,7 @@
 	NULL
 };
 
-__initfunc(int init_affs_fs(void))
+int __init init_affs_fs(void)
 {
 	return register_filesystem(&affs_fs_type);
 }
diff -urN linux/fs/autofs/init.c linux-2.3.15-work/fs/autofs/init.c
--- linux/fs/autofs/init.c	Tue Oct 27 22:13:53 1998
+++ linux-2.3.15-work/fs/autofs/init.c	Thu Aug 26 09:54:27 1999
@@ -34,7 +34,7 @@
 
 #else /* MODULE */
 
-__initfunc(int init_autofs_fs(void))
+int __init init_autofs_fs(void)
 {
 	return register_filesystem(&autofs_fs_type);
 }
diff -urN linux/fs/coda/psdev.c linux-2.3.15-work/fs/coda/psdev.c
--- linux/fs/coda/psdev.c	Mon Aug 23 18:14:44 1999
+++ linux-2.3.15-work/fs/coda/psdev.c	Thu Aug 26 09:54:54 1999
@@ -334,7 +334,7 @@
 
 
 
-__initfunc(int init_coda(void)) 
+int __init init_coda(void)
 {
 	int status;
 	printk(KERN_INFO "Coda Kernel/Venus communications, v4.6.0, braam@cs.cmu.edu\n");
diff -urN linux/fs/devpts/inode.c linux-2.3.15-work/fs/devpts/inode.c
--- linux/fs/devpts/inode.c	Tue Jun  8 18:47:58 1999
+++ linux-2.3.15-work/fs/devpts/inode.c	Thu Aug 26 09:56:05 1999
@@ -348,10 +348,9 @@
 	}
 }
 
-__initfunc(int init_devpts_fs(void))
+int __init init_devpts_fs(void)
 {
 	return register_filesystem(&devpts_fs_type);
-
 }
 
 #ifdef MODULE
diff -urN linux/fs/efs/super.c linux-2.3.15-work/fs/efs/super.c
--- linux/fs/efs/super.c	Tue Jun  8 18:47:58 1999
+++ linux-2.3.15-work/fs/efs/super.c	Thu Aug 26 09:56:26 1999
@@ -32,7 +32,7 @@
 	NULL		/* remount */
 };
 
-__initfunc(int init_efs_fs(void)) {
+int __init init_efs_fs(void)) {
 	return register_filesystem(&efs_fs_type);
 }
 
diff -urN linux/fs/ext2/super.c linux-2.3.15-work/fs/ext2/super.c
--- linux/fs/ext2/super.c	Tue Jun  8 18:47:58 1999
+++ linux-2.3.15-work/fs/ext2/super.c	Thu Aug 26 09:52:24 1999
@@ -739,7 +739,7 @@
 	NULL
 };
 
-__initfunc(int init_ext2_fs(void))
+int __init init_ext2_fs(void)
 {
         return register_filesystem(&ext2_fs_type);
 }
diff -urN linux/fs/hfs/super.c linux-2.3.15-work/fs/hfs/super.c
--- linux/fs/hfs/super.c	Tue Jun  8 18:47:58 1999
+++ linux-2.3.15-work/fs/hfs/super.c	Thu Aug 26 09:55:08 1999
@@ -493,7 +493,7 @@
 	return NULL;	
 }
 
-__initfunc(int init_hfs_fs(void))
+int __init init_hfs_fs(void)
 {
         hfs_cat_init();
 	return register_filesystem(&hfs_fs);
diff -urN linux/fs/isofs/inode.c linux-2.3.15-work/fs/isofs/inode.c
--- linux/fs/isofs/inode.c	Sun Jun 27 18:10:41 1999
+++ linux-2.3.15-work/fs/isofs/inode.c	Thu Aug 26 09:50:51 1999
@@ -1469,7 +1469,7 @@
 	NULL
 };
 
-__initfunc(int init_iso9660_fs(void))
+int __init init_iso9660_fs(void)
 {
         return register_filesystem(&iso9660_fs_type);
 }
diff -urN linux/fs/minix/inode.c linux-2.3.15-work/fs/minix/inode.c
--- linux/fs/minix/inode.c	Sun Jun 27 18:10:41 1999
+++ linux-2.3.15-work/fs/minix/inode.c	Thu Aug 26 09:50:33 1999
@@ -1238,7 +1238,7 @@
 	NULL
 };
 
-__initfunc(int init_minix_fs(void))
+int __init init_minix_fs(void)
 {
         return register_filesystem(&minix_fs_type);
 }
diff -urN linux/fs/msdos/msdosfs_syms.c linux-2.3.15-work/fs/msdos/msdosfs_syms.c
--- linux/fs/msdos/msdosfs_syms.c	Fri May 14 07:18:20 1999
+++ linux-2.3.15-work/fs/msdos/msdosfs_syms.c	Thu Aug 26 09:49:03 1999
@@ -34,7 +34,7 @@
 	NULL
 };
 
-__initfunc(int init_msdos_fs(void))
+int __init init_msdos_fs(void)
 {
 	return register_filesystem(&msdos_fs_type);
 }
diff -urN linux/fs/ncpfs/inode.c linux-2.3.15-work/fs/ncpfs/inode.c
--- linux/fs/ncpfs/inode.c	Sat Aug  7 20:59:40 1999
+++ linux-2.3.15-work/fs/ncpfs/inode.c	Thu Aug 26 09:53:18 1999
@@ -720,7 +720,7 @@
 	NULL
 };
 
-__initfunc(int init_ncp_fs(void))
+int __init init_ncp_fs(void)
 {
 	return register_filesystem(&ncp_fs_type);
 }
diff -urN linux/fs/nfs/nfsroot.c linux-2.3.15-work/fs/nfs/nfsroot.c
--- linux/fs/nfs/nfsroot.c	Fri Apr 24 02:12:21 1998
+++ linux-2.3.15-work/fs/nfs/nfsroot.c	Thu Aug 26 09:52:08 1999
@@ -154,7 +154,7 @@
  *  need to have root_server_addr set _before_ IPConfig gets called as it
  *  can override it.
  */
-__initfunc(static void root_nfs_parse_addr(char *name))
+static void __init root_nfs_parse_addr(char *name)
 {
 	int octets = 0;
 	char *cp, *cq;
@@ -183,7 +183,7 @@
 /*
  *  Parse option string.
  */
-__initfunc(static void root_nfs_parse(char *name, char *buf))
+static void __init root_nfs_parse(char *name, char *buf)
 {
 	char *options, *val, *cp;
 
@@ -220,7 +220,7 @@
 /*
  *  Prepare the NFS data structure and parse all options.
  */
-__initfunc(static int root_nfs_name(char *name))
+static int __init root_nfs_name(char *name)
 {
 	char buf[NFS_MAXPATHLEN];
 	char *cp;
@@ -261,7 +261,7 @@
 /*
  *  Get NFS server address.
  */
-__initfunc(static int root_nfs_addr(void))
+static int __init root_nfs_addr(void)
 {
 	if ((servaddr = root_server_addr) == INADDR_NONE) {
 		printk(KERN_ERR "Root-NFS: No NFS server available, giving up.\n");
@@ -277,7 +277,7 @@
  *  Tell the user what's going on.
  */
 #ifdef NFSROOT_DEBUG
-__initfunc(static void root_nfs_print(void))
+static void __init root_nfs_print(void)
 {
 	printk(KERN_NOTICE "Root-NFS: Mounting %s on server %s as root\n",
 		nfs_path, nfs_data.hostname);
@@ -292,7 +292,7 @@
 #endif
 
 
-__initfunc(int root_nfs_init(void))
+int __init root_nfs_init(void)
 {
 #ifdef NFSROOT_DEBUG
 	nfs_debug |= NFSDBG_ROOT;
@@ -320,7 +320,7 @@
  *  Parse NFS server and directory information passed on the kernel
  *  command line.
  */
-__initfunc(void nfs_root_setup(char *line, int *ints))
+void __init nfs_root_setup(char *line, int *ints)
 {
 	ROOT_DEV = MKDEV(UNNAMED_MAJOR, 255);
 	if (line[0] == '/' || line[0] == ',' || (line[0] >= '0' && line[0] <= '9')) {
@@ -356,7 +356,7 @@
 /*
  *  Query server portmapper for the port of a daemon program.
  */
-__initfunc(static int root_nfs_getport(int program, int version))
+static int __init root_nfs_getport(int program, int version)
 {
 	struct sockaddr_in sin;
 
@@ -372,7 +372,7 @@
  *  by the user. Use defaults if portmapper is not available.
  *  XXX: Is there any nfs server with no portmapper?
  */
-__initfunc(static int root_nfs_ports(void))
+static int __init root_nfs_ports(void)
 {
 	int port;
 
@@ -403,7 +403,7 @@
  *  Get a file handle from the server for the directory which is to be
  *  mounted.
  */
-__initfunc(static int root_nfs_get_handle(void))
+static int __init root_nfs_get_handle(void)
 {
 	struct sockaddr_in sin;
 	int status;
@@ -421,7 +421,7 @@
 /*
  *  Now actually mount the given directory.
  */
-__initfunc(static int root_nfs_do_mount(struct super_block *sb))
+static int __init root_nfs_do_mount(struct super_block *sb)
 {
 	/* Pass the server address to NFS */
 	set_sockaddr((struct sockaddr_in *) &nfs_data.addr, servaddr, nfs_port);
@@ -437,7 +437,7 @@
  *  Get the NFS port numbers and file handle, and then read the super-
  *  block for mounting.
  */
-__initfunc(int nfs_root_mount(struct super_block *sb))
+int __init nfs_root_mount(struct super_block *sb)
 {
 	if (root_nfs_init() < 0
 	 || root_nfs_ports() < 0
diff -urN linux/fs/ntfs/fs.c linux-2.3.15-work/fs/ntfs/fs.c
--- linux/fs/ntfs/fs.c	Sun Jun 27 18:10:41 1999
+++ linux-2.3.15-work/fs/ntfs/fs.c	Thu Aug 26 09:55:43 1999
@@ -1028,10 +1028,10 @@
 /* When this code is not compiled as a module, this is the main entry point,
  * called by do_sys_setup() in fs/filesystems.c
  *
- * NOTE : __initfunc() is a macro used to remove this function from memory
+ * NOTE : __init is a macro used to remove this function from memory
  * once initialization is done
  */
-__initfunc(int init_ntfs_fs(void))
+int __init init_ntfs_fs(void)
 {
 	/* Comment this if you trust klogd. There are reasons not to trust it
 	 */
diff -urN linux/fs/proc/base.c linux-2.3.15-work/fs/proc/base.c
--- linux/fs/proc/base.c	Sat Jun 26 20:04:39 1999
+++ linux-2.3.15-work/fs/proc/base.c	Thu Aug 26 09:49:35 1999
@@ -178,7 +178,7 @@
 };
 #endif
 
-__initfunc(void proc_base_init(void))
+void __init proc_base_init(void)
 {
 #if CONFIG_AP1000
 	proc_register(&proc_pid, &proc_pid_ringbuf);
diff -urN linux/fs/proc/openpromfs.c linux-2.3.15-work/fs/proc/openpromfs.c
--- linux/fs/proc/openpromfs.c	Tue Jun 29 17:22:08 1999
+++ linux-2.3.15-work/fs/proc/openpromfs.c	Thu Aug 26 09:50:06 1999
@@ -990,7 +990,7 @@
 
 /* {{{ init section */
 #ifndef MODULE
-__initfunc(static int check_space (u16 n))
+static int __init check_space (u16 n)
 #else
 static int check_space (u16 n)
 #endif
@@ -1014,7 +1014,7 @@
 }
 
 #ifndef MODULE
-__initfunc(static u16 get_nodes (u16 parent, u32 node))
+static u16 __init get_nodes (u16 parent, u32 node)
 #else
 static u16 get_nodes (u16 parent, u32 node)
 #endif
@@ -1132,7 +1132,7 @@
 
 #ifndef MODULE
 #define RET(x)
-__initfunc(void openpromfs_init (void))
+void __init openpromfs_init (void)
 #else
 
 EXPORT_NO_SYMBOLS;
diff -urN linux/fs/proc/proc_tty.c linux-2.3.15-work/fs/proc/proc_tty.c
--- linux/fs/proc/proc_tty.c	Tue Aug  4 18:57:13 1998
+++ linux-2.3.15-work/fs/proc/proc_tty.c	Thu Aug 26 09:50:20 1999
@@ -170,7 +170,7 @@
 /*
  * Called by proc_root_init() to initialize the /proc/tty subtree
  */
-__initfunc(void proc_tty_init(void))
+void __init proc_tty_init(void)
 {
 	struct proc_dir_entry *ent;
 	
diff -urN linux/fs/proc/root.c linux-2.3.15-work/fs/proc/root.c
--- linux/fs/proc/root.c	Thu Aug  5 01:19:09 1999
+++ linux-2.3.15-work/fs/proc/root.c	Thu Aug 26 09:49:20 1999
@@ -704,7 +704,7 @@
 };
 #endif
 
-__initfunc(void proc_root_init(void))
+void __init proc_root_init(void)
 {
 	proc_base_init();
 	proc_register(&proc_root, &proc_root_loadavg);
diff -urN linux/fs/qnx4/inode.c linux-2.3.15-work/fs/qnx4/inode.c
--- linux/fs/qnx4/inode.c	Tue Jun  8 18:47:58 1999
+++ linux-2.3.15-work/fs/qnx4/inode.c	Thu Aug 26 09:54:40 1999
@@ -430,7 +430,7 @@
 	NULL
 };
 
-__initfunc(int init_qnx4_fs(void))
+int __init init_qnx4_fs(void)
 {
 	printk("QNX4 filesystem v0.2 registered.\n");
 	return register_filesystem(&qnx4_fs_type);
diff -urN linux/fs/romfs/inode.c linux-2.3.15-work/fs/romfs/inode.c
--- linux/fs/romfs/inode.c	Thu Aug 12 18:19:59 1999
+++ linux-2.3.15-work/fs/romfs/inode.c	Thu Aug 26 09:54:11 1999
@@ -692,7 +692,7 @@
 	NULL
 };
 
-__initfunc(int init_romfs_fs(void))
+int __init init_romfs_fs(void)
 {
 	return register_filesystem(&romfs_fs_type);
 }
diff -urN linux/fs/smbfs/inode.c linux-2.3.15-work/fs/smbfs/inode.c
--- linux/fs/smbfs/inode.c	Wed Jun 30 19:24:55 1999
+++ linux-2.3.15-work/fs/smbfs/inode.c	Thu Aug 26 09:53:06 1999
@@ -575,7 +575,7 @@
 	NULL
 };
 
-__initfunc(int init_smb_fs(void))
+int __init init_smb_fs(void)
 {
 	return register_filesystem(&smb_fs_type);
 }
diff -urN linux/fs/sysv/inode.c linux-2.3.15-work/fs/sysv/inode.c
--- linux/fs/sysv/inode.c	Sun Jun 27 18:10:41 1999
+++ linux-2.3.15-work/fs/sysv/inode.c	Thu Aug 26 09:52:53 1999
@@ -1174,7 +1174,7 @@
 	{"coherent", FS_REQUIRES_DEV, sysv_read_super, NULL}
 };
 
-__initfunc(int init_sysv_fs(void))
+int __init init_sysv_fs(void)
 {
 	int i;
 	int ouch;
diff -urN linux/fs/ufs/super.c linux-2.3.15-work/fs/ufs/super.c
--- linux/fs/ufs/super.c	Thu Jul  1 18:45:57 1999
+++ linux-2.3.15-work/fs/ufs/super.c	Thu Aug 26 09:53:30 1999
@@ -935,7 +935,7 @@
 	NULL
 };
 
-__initfunc(int init_ufs_fs(void))
+int __init init_ufs_fs(void)
 {
 	return register_filesystem(&ufs_fs_type);
 }
diff -urN linux/fs/umsdos/inode.c linux-2.3.15-work/fs/umsdos/inode.c
--- linux/fs/umsdos/inode.c	Mon Aug  9 19:44:49 1999
+++ linux-2.3.15-work/fs/umsdos/inode.c	Thu Aug 26 09:52:39 1999
@@ -434,7 +434,7 @@
 	NULL
 };
 
-__initfunc (int init_umsdos_fs (void))
+int __init init_umsdos_fs (void)
 {
 	return register_filesystem (&umsdos_fs_type);
 }
diff -urN linux/net/atm/proc.c linux-2.3.15-work/net/atm/proc.c
--- linux/net/atm/proc.c	Mon Aug 23 17:56:32 1999
+++ linux-2.3.15-work/net/atm/proc.c	Thu Aug 26 10:22:02 1999
@@ -31,7 +31,7 @@
 #include <linux/atmclip.h>
 #include <linux/atmarp.h>
 #include <linux/if_arp.h>
-#include <linux/init.h> /* for __initfunc */
+#include <linux/init.h> /* for __init */
 #include <asm/uaccess.h>
 #include <asm/param.h> /* for HZ */
 #include "resources.h"
@@ -596,7 +596,7 @@
 }
 
 
-__initfunc(int atm_proc_init(void))
+int __init atm_proc_init(void)
 {
 	int error;
 
diff -urN linux/net/atm/pvc.c linux-2.3.15-work/net/atm/pvc.c
--- linux/net/atm/pvc.c	Mon Aug 23 17:56:32 1999
+++ linux-2.3.15-work/net/atm/pvc.c	Thu Aug 26 10:22:31 1999
@@ -139,7 +139,7 @@
  */
 
 
-__initfunc(void atmpvc_proto_init(struct net_proto *pro))
+void __init atmpvc_proto_init(struct net_proto *pro)
 {
 	int error;
 
diff -urN linux/net/atm/svc.c linux-2.3.15-work/net/atm/svc.c
--- linux/net/atm/svc.c	Mon Aug 23 17:56:32 1999
+++ linux-2.3.15-work/net/atm/svc.c	Thu Aug 26 10:22:47 1999
@@ -386,7 +386,7 @@
  *	Initialize the ATM SVC protocol family
  */
 
-__initfunc(void atmsvc_proto_init(struct net_proto *pro))
+void __init atmsvc_proto_init(struct net_proto *pro)
 {
 	if (sock_register(&svc_family_ops) < 0) {
 		printk(KERN_ERR "ATMSVC: can't register");
diff -urN linux/net/bridge/br.c linux-2.3.15-work/net/bridge/br.c
--- linux/net/bridge/br.c	Mon Aug 23 18:18:38 1999
+++ linux-2.3.15-work/net/bridge/br.c	Thu Aug 26 10:04:01 1999
@@ -839,7 +839,7 @@
 	br_tree_get_info
 };
 #endif
-__initfunc(void br_init(void))
+void __init br_init(void)
 {						  /* (4.8.1)	 */
 	int port_no;
 
diff -urN linux/net/core/netfilter.c linux-2.3.15-work/net/core/netfilter.c
--- linux/net/core/netfilter.c	Mon Aug 23 21:44:03 1999
+++ linux-2.3.15-work/net/core/netfilter.c	Thu Aug 26 09:57:47 1999
@@ -583,7 +583,7 @@
 }
 #endif /* CONFIG_NETFILTER_DEBUG */
 
-__initfunc(void netfilter_init(void))
+void __init netfilter_init(void)
 {
 	int i, h;
 
diff -urN linux/net/econet/econet.c linux-2.3.15-work/net/econet/econet.c
--- linux/net/econet/econet.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/econet/econet.c	Thu Aug 26 10:04:21 1999
@@ -1008,7 +1008,7 @@
 	mod_timer(&ab_cleanup_timer, jiffies + (HZ*2));
 }
 
-__initfunc(static int aun_udp_initialise(void))
+static int __init aun_udp_initialise(void)
 {
 	int error;
 	struct sockaddr_in sin;
@@ -1106,7 +1106,7 @@
 
 int init_module(void)
 #else
-__initfunc(void econet_proto_init(struct net_proto *pro))
+void __init econet_proto_init(struct net_proto *pro)
 #endif
 {
 	spin_lock_init(&edevlist_lock);
diff -urN linux/net/ipv4/devinet.c linux-2.3.15-work/net/ipv4/devinet.c
--- linux/net/ipv4/devinet.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv4/devinet.c	Thu Aug 26 09:59:19 1999
@@ -1127,7 +1127,7 @@
 }
 #endif
 
-__initfunc(void devinet_init(void))
+void __init devinet_init(void)
 {
 	register_gifconf(PF_INET, inet_gifconf);
 	register_netdevice_notifier(&ip_netdev_notifier);
diff -urN linux/net/ipv4/fib_frontend.c linux-2.3.15-work/net/ipv4/fib_frontend.c
--- linux/net/ipv4/fib_frontend.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv4/fib_frontend.c	Thu Aug 26 10:00:00 1999
@@ -645,7 +645,7 @@
 	0
 };
 
-__initfunc(void ip_fib_init(void))
+void __init ip_fib_init(void)
 {
 #ifdef CONFIG_PROC_FS
 	proc_net_register(&(struct proc_dir_entry) {
diff -urN linux/net/ipv4/fib_hash.c linux-2.3.15-work/net/ipv4/fib_hash.c
--- linux/net/ipv4/fib_hash.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv4/fib_hash.c	Thu Aug 26 10:00:15 1999
@@ -899,7 +899,7 @@
 #ifdef CONFIG_IP_MULTIPLE_TABLES
 struct fib_table * fib_hash_init(int id)
 #else
-__initfunc(struct fib_table * fib_hash_init(int id))
+struct fib_table * __init fib_hash_init(int id)
 #endif
 {
 	struct fib_table *tb;
diff -urN linux/net/ipv4/fib_rules.c linux-2.3.15-work/net/ipv4/fib_rules.c
--- linux/net/ipv4/fib_rules.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv4/fib_rules.c	Thu Aug 26 10:00:30 1999
@@ -448,7 +448,7 @@
 
 #endif /* CONFIG_RTNETLINK */
 
-__initfunc(void fib_rules_init(void))
+void __init fib_rules_init(void)
 {
 	register_netdevice_notifier(&fib_rules_notifier);
 }
diff -urN linux/net/ipv4/icmp.c linux-2.3.15-work/net/ipv4/icmp.c
--- linux/net/ipv4/icmp.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv4/icmp.c	Thu Aug 26 09:58:01 1999
@@ -1129,7 +1129,7 @@
  { &icmp_statistics.IcmpOutAddrMaskReps, &icmp_statistics.IcmpInAddrMaskReps, icmp_address_reply, 0, }
 };
 
-__initfunc(void icmp_init(struct net_proto_family *ops))
+void __init icmp_init(struct net_proto_family *ops)
 {
 	int err;
 
diff -urN linux/net/ipv4/ip_gre.c linux-2.3.15-work/net/ipv4/ip_gre.c
--- linux/net/ipv4/ip_gre.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv4/ip_gre.c	Thu Aug 26 09:58:42 1999
@@ -1170,7 +1170,7 @@
 }
 #endif
 
-__initfunc(int ipgre_fb_tunnel_init(struct net_device *dev))
+int __init ipgre_fb_tunnel_init(struct net_device *dev)
 {
 	struct ip_tunnel *tunnel = (struct ip_tunnel*)dev->priv;
 	struct iphdr *iph;
@@ -1211,7 +1211,7 @@
 #ifdef MODULE
 int init_module(void) 
 #else
-__initfunc(int ipgre_init(void))
+int __init ipgre_init(void)
 #endif
 {
 	printk(KERN_INFO "GRE over IPv4 tunneling driver\n");
diff -urN linux/net/ipv4/ip_output.c linux-2.3.15-work/net/ipv4/ip_output.c
--- linux/net/ipv4/ip_output.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv4/ip_output.c	Thu Aug 26 09:59:46 1999
@@ -1023,7 +1023,7 @@
  *	IP registers the packet type and then calls the subprotocol initialisers
  */
 
-__initfunc(void ip_init(void))
+void __init ip_init(void)
 {
 	dev_add_pack(&ip_packet_type);
 
diff -urN linux/net/ipv4/ipip.c linux-2.3.15-work/net/ipv4/ipip.c
--- linux/net/ipv4/ipip.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv4/ipip.c	Thu Aug 26 09:58:20 1999
@@ -826,7 +826,7 @@
 }
 #endif
 
-__initfunc(int ipip_fb_tunnel_init(struct net_device *dev))
+int __init ipip_fb_tunnel_init(struct net_device *dev)
 {
 	struct iphdr *iph;
 
@@ -859,7 +859,7 @@
 #ifdef MODULE
 int init_module(void) 
 #else
-__initfunc(int ipip_init(void))
+int __init ipip_init(void)
 #endif
 {
 	printk(KERN_INFO "IPv4 over IPv4 tunneling driver\n");
diff -urN linux/net/ipv4/ipmr.c linux-2.3.15-work/net/ipv4/ipmr.c
--- linux/net/ipv4/ipmr.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv4/ipmr.c	Thu Aug 26 09:59:33 1999
@@ -1735,7 +1735,7 @@
  *	Setup for IP multicast routing
  */
  
-__initfunc(void ip_mr_init(void))
+void __init ip_mr_init(void)
 {
 	printk(KERN_INFO "Linux IP multicast router 0.06 plus PIM-SM\n");
 	mrt_cachep = kmem_cache_create("ip_mrt_cache",
diff -urN linux/net/ipv4/tcp_ipv4.c linux-2.3.15-work/net/ipv4/tcp_ipv4.c
--- linux/net/ipv4/tcp_ipv4.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv4/tcp_ipv4.c	Thu Aug 26 10:00:45 1999
@@ -2222,7 +2222,7 @@
 
 
 
-__initfunc(void tcp_v4_init(struct net_proto_family *ops))
+void __init tcp_v4_init(struct net_proto_family *ops)
 {
 	int err;
 
diff -urN linux/net/ipv6/addrconf.c linux-2.3.15-work/net/ipv6/addrconf.c
--- linux/net/ipv6/addrconf.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv6/addrconf.c	Thu Aug 26 10:01:24 1999
@@ -1982,7 +1982,7 @@
  *	Init / cleanup code
  */
 
-__initfunc(void addrconf_init(void))
+void __init addrconf_init(void)
 {
 #ifdef MODULE
 	struct net_device *dev;
diff -urN linux/net/ipv6/af_inet6.c linux-2.3.15-work/net/ipv6/af_inet6.c
--- linux/net/ipv6/af_inet6.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv6/af_inet6.c	Thu Aug 26 10:01:38 1999
@@ -509,7 +509,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(void inet6_proto_init(struct net_proto *pro))
+void __init inet6_proto_init(struct net_proto *pro)
 #endif
 {
 	struct sk_buff *dummy_skb;
diff -urN linux/net/ipv6/ip6_fib.c linux-2.3.15-work/net/ipv6/ip6_fib.c
--- linux/net/ipv6/ip6_fib.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv6/ip6_fib.c	Thu Aug 26 10:02:27 1999
@@ -1204,7 +1204,7 @@
 	spin_unlock_bh(&fib6_gc_lock);
 }
 
-__initfunc(void fib6_init(void))
+void __init fib6_init(void)
 {
 	if (!fib6_node_kmem)
 		fib6_node_kmem = kmem_cache_create("fib6_nodes",
diff -urN linux/net/ipv6/ip6_fw.c linux-2.3.15-work/net/ipv6/ip6_fw.c
--- linux/net/ipv6/ip6_fw.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv6/ip6_fw.c	Thu Aug 26 10:03:28 1999
@@ -377,7 +377,7 @@
 #define ip6_fw_init module_init
 #endif
 
-__initfunc(void ip6_fw_init(void))
+void __init ip6_fw_init(void)
 {
 #ifdef CONFIG_NETLINK
 	netlink_attach(NETLINK_IP6_FW, ip6_fw_msgrcv);
diff -urN linux/net/ipv6/ipv6_sockglue.c linux-2.3.15-work/net/ipv6/ipv6_sockglue.c
--- linux/net/ipv6/ipv6_sockglue.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv6/ipv6_sockglue.c	Thu Aug 26 10:01:56 1999
@@ -458,12 +458,12 @@
 extern void ipv6_sysctl_unregister(void);
 #endif
 
-__initfunc(void ipv6_packet_init(void))
+void __init ipv6_packet_init(void)
 {
 	dev_add_pack(&ipv6_packet_type);
 }
 
-__initfunc(void ipv6_netdev_notif_init(void))
+void __init ipv6_netdev_notif_init(void)
 {
 	register_netdevice_notifier(&ipv6_dev_notf);
 }
diff -urN linux/net/ipv6/mcast.c linux-2.3.15-work/net/ipv6/mcast.c
--- linux/net/ipv6/mcast.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv6/mcast.c	Thu Aug 26 10:03:15 1999
@@ -705,7 +705,7 @@
 }
 #endif
 
-__initfunc(int igmp6_init(struct net_proto_family *ops))
+int __init igmp6_init(struct net_proto_family *ops)
 {
 #ifdef CONFIG_PROC_FS
 	struct proc_dir_entry *ent;
diff -urN linux/net/ipv6/ndisc.c linux-2.3.15-work/net/ipv6/ndisc.c
--- linux/net/ipv6/ndisc.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv6/ndisc.c	Thu Aug 26 10:02:40 1999
@@ -1191,7 +1191,7 @@
 
 
 
-__initfunc(int ndisc_init(struct net_proto_family *ops))
+int __init ndisc_init(struct net_proto_family *ops)
 {
 	struct sock *sk;
         int err;
diff -urN linux/net/ipv6/route.c linux-2.3.15-work/net/ipv6/route.c
--- linux/net/ipv6/route.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv6/route.c	Thu Aug 26 10:03:46 1999
@@ -1928,7 +1928,7 @@
 #endif
 
 
-__initfunc(void ip6_route_init(void))
+void __init ip6_route_init(void)
 {
 	ip6_dst_ops.kmem_cachep = kmem_cache_create("ip6_dst_cache",
 						     sizeof(struct rt6_info),
diff -urN linux/net/ipv6/sit.c linux-2.3.15-work/net/ipv6/sit.c
--- linux/net/ipv6/sit.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv6/sit.c	Thu Aug 26 10:02:58 1999
@@ -756,7 +756,7 @@
 }
 #endif
 
-__initfunc(int ipip6_fb_tunnel_init(struct net_device *dev))
+int __init ipip6_fb_tunnel_init(struct net_device *dev)
 {
 	struct iphdr *iph;
 
@@ -795,7 +795,7 @@
 }
 #endif
 
-__initfunc(int sit_init(void))
+int __init sit_init(void)
 {
 	printk(KERN_INFO "IPv6 over IPv4 tunneling driver\n");
 
diff -urN linux/net/ipv6/tcp_ipv6.c linux-2.3.15-work/net/ipv6/tcp_ipv6.c
--- linux/net/ipv6/tcp_ipv6.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/ipv6/tcp_ipv6.c	Thu Aug 26 10:02:09 1999
@@ -2143,7 +2143,7 @@
 	"TCPv6"			/* name			*/
 };
 
-__initfunc(void tcpv6_init(void))
+void __init tcpv6_init(void)
 {
 	/* register inet6 protocol */
 	inet6_add_protocol(&tcpv6_protocol);
diff -urN linux/net/irda/af_irda.c linux-2.3.15-work/net/irda/af_irda.c
--- linux/net/irda/af_irda.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/irda/af_irda.c	Thu Aug 26 10:14:54 1999
@@ -1439,7 +1439,7 @@
  *    Initialize IrDA protocol layer
  *
  */
-__initfunc(void irda_proto_init(struct net_proto *pro))
+void __init irda_proto_init(struct net_proto *pro)
 {
 	DEBUG( 4, __FUNCTION__ "\n");
 
diff -urN linux/net/irda/compressors/irda_deflate.c linux-2.3.15-work/net/irda/compressors/irda_deflate.c
--- linux/net/irda/compressors/irda_deflate.c	Tue Jul  6 04:35:18 1999
+++ linux-2.3.15-work/net/irda/compressors/irda_deflate.c	Thu Aug 26 10:15:21 1999
@@ -594,7 +594,7 @@
 	z_comp_stats,		/* decomp_stat */
 };
 
-__initfunc(int irda_deflate_init(void))
+int __init irda_deflate_init(void)
 {
         int answer = irda_register_compressor ( &irda_deflate);
         if (answer == 0)
diff -urN linux/net/irda/ircomm/ircomm_common.c linux-2.3.15-work/net/irda/ircomm/ircomm_common.c
--- linux/net/irda/ircomm/ircomm_common.c	Tue Jun  8 00:18:58 1999
+++ linux-2.3.15-work/net/irda/ircomm/ircomm_common.c	Thu Aug 26 10:15:35 1999
@@ -163,7 +163,7 @@
 	ircomm_state_conn,
 };
 
-__initfunc(int ircomm_init(void))
+int __init ircomm_init(void)
 {
 	int i;
 
diff -urN linux/net/irda/ircomm/irvtd_driver.c linux-2.3.15-work/net/irda/ircomm/irvtd_driver.c
--- linux/net/irda/ircomm/irvtd_driver.c	Tue Jun  8 00:18:58 1999
+++ linux-2.3.15-work/net/irda/ircomm/irvtd_driver.c	Thu Aug 26 10:15:49 1999
@@ -1971,7 +1971,7 @@
  *    init & cleanup this module 
  ************************************************************/
 
-__initfunc(int irvtd_init(void))
+int __init irvtd_init(void)
 {
 	int i;
 
diff -urN linux/net/irda/irda_device.c linux-2.3.15-work/net/irda/irda_device.c
--- linux/net/irda/irda_device.c	Wed Aug 18 19:38:49 1999
+++ linux-2.3.15-work/net/irda/irda_device.c	Thu Aug 26 10:16:08 1999
@@ -76,7 +76,7 @@
 
 #endif /* CONFIG_PROC_FS */
 
-__initfunc(int irda_device_init( void))
+int __init irda_device_init(void)
 {
 	/* Allocate master array */
 	irda_device = hashbin_new( HB_LOCAL);
diff -urN linux/net/irda/iriap.c linux-2.3.15-work/net/irda/iriap.c
--- linux/net/irda/iriap.c	Sun May 30 18:27:04 1999
+++ linux-2.3.15-work/net/irda/iriap.c	Thu Aug 26 10:16:24 1999
@@ -82,7 +82,7 @@
  *    Initializes the IrIAP layer, called by the module initialization code
  *    in irmod.c 
  */
-__initfunc(int iriap_init(void))
+int __init iriap_init(void)
 {
 	__u16 hints;
 	struct ias_object *obj;
diff -urN linux/net/irda/irlan/irlan_common.c linux-2.3.15-work/net/irda/irlan/irlan_common.c
--- linux/net/irda/irlan/irlan_common.c	Tue Jun  8 00:18:58 1999
+++ linux-2.3.15-work/net/irda/irlan/irlan_common.c	Thu Aug 26 10:16:38 1999
@@ -166,7 +166,7 @@
  *    Initialize IrLAN layer
  *
  */
-__initfunc(int irlan_init(void))
+int __init irlan_init(void)
 {
 	struct irlan_cb *new;
 	__u16 hints;
diff -urN linux/net/irda/irlap.c linux-2.3.15-work/net/irda/irlap.c
--- linux/net/irda/irlap.c	Tue Jun  8 00:18:58 1999
+++ linux-2.3.15-work/net/irda/irlap.c	Thu Aug 26 10:16:50 1999
@@ -69,7 +69,7 @@
 
 #endif /* CONFIG_PROC_FS */
 
-__initfunc(int irlap_init(void))
+int __init irlap_init(void)
 {
 	/* Allocate master array */
 	irlap = hashbin_new(HB_LOCAL);
diff -urN linux/net/irda/irlmp.c linux-2.3.15-work/net/irda/irlmp.c
--- linux/net/irda/irlmp.c	Tue Jun  8 00:18:58 1999
+++ linux-2.3.15-work/net/irda/irlmp.c	Thu Aug 26 10:17:03 1999
@@ -72,7 +72,7 @@
  *    Create (allocate) the main IrLMP structure and the pointer array
  *    which will contain pointers to each instance of a LSAP.
  */
-__initfunc(int irlmp_init(void))
+int __init irlmp_init(void)
 {
 	/* Initialize the irlmp structure. */
 	if ( irlmp == NULL) {
diff -urN linux/net/irda/irlpt/irlpt_cli.c linux-2.3.15-work/net/irda/irlpt/irlpt_cli.c
--- linux/net/irda/irlpt/irlpt_cli.c	Sun May 30 18:27:04 1999
+++ linux-2.3.15-work/net/irda/irlpt/irlpt_cli.c	Thu Aug 26 10:17:42 1999
@@ -168,7 +168,7 @@
  *   Initializes the irlpt control structure
  *
  */
-__initfunc(int irlpt_client_init(void))
+int __init irlpt_client_init(void)
 {
 	__u16 hints;
 	
diff -urN linux/net/irda/irlpt/irlpt_srvr.c linux-2.3.15-work/net/irda/irlpt/irlpt_srvr.c
--- linux/net/irda/irlpt/irlpt_srvr.c	Sun May 30 18:27:04 1999
+++ linux-2.3.15-work/net/irda/irlpt/irlpt_srvr.c	Thu Aug 26 10:17:54 1999
@@ -176,7 +176,7 @@
  *
  */
 
-__initfunc(int irlpt_server_init(void))
+int __init irlpt_server_init(void)
 {
 	struct irmanager_event mgr_event;
 	__u16 hints;
diff -urN linux/net/irda/irmod.c linux-2.3.15-work/net/irda/irmod.c
--- linux/net/irda/irmod.c	Tue Jul  6 04:03:14 1999
+++ linux-2.3.15-work/net/irda/irmod.c	Thu Aug 26 10:17:16 1999
@@ -193,7 +193,7 @@
 EXPORT_SYMBOL(irtty_unregister_dongle);
 #endif
 
-__initfunc(int irda_init(void))
+int __init irda_init(void)
 {
         printk(KERN_INFO "IrDA (tm) Protocols for Linux-2.2 (Dag Brattli)\n");
 
diff -urN linux/net/irda/irttp.c linux-2.3.15-work/net/irda/irttp.c
--- linux/net/irda/irttp.c	Tue Jun  8 00:18:58 1999
+++ linux-2.3.15-work/net/irda/irttp.c	Thu Aug 26 10:17:29 1999
@@ -65,7 +65,7 @@
  *    Initialize the IrTTP layer. Called by module initialization code
  *
  */
-__initfunc(int irttp_init(void))
+int __init irttp_init(void)
 {
 	/* Initialize the irttp structure. */
 	if (irttp == NULL) {
diff -urN linux/net/lapb/lapb_iface.c linux-2.3.15-work/net/lapb/lapb_iface.c
--- linux/net/lapb/lapb_iface.c	Mon Jan  4 23:31:35 1999
+++ linux-2.3.15-work/net/lapb/lapb_iface.c	Thu Aug 26 10:04:34 1999
@@ -401,7 +401,7 @@
 EXPORT_SYMBOL(lapb_data_request);
 EXPORT_SYMBOL(lapb_data_received);
 
-__initfunc(void lapb_proto_init(struct net_proto *pro))
+void __init lapb_proto_init(struct net_proto *pro)
 {
 	printk(KERN_INFO "NET4: LAPB for Linux. Version 0.01 for NET4.0\n");
 }
diff -urN linux/net/netlink/netlink_dev.c linux-2.3.15-work/net/netlink/netlink_dev.c
--- linux/net/netlink/netlink_dev.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/netlink/netlink_dev.c	Thu Aug 26 10:13:52 1999
@@ -178,7 +178,7 @@
 	netlink_release
 };
 
-__initfunc(int init_netlink(void))
+int __init init_netlink(void)
 {
 	if (register_chrdev(NETLINK_MAJOR,"netlink", &netlink_fops)) {
 		printk(KERN_ERR "netlink: unable to get major %d\n", NETLINK_MAJOR);
diff -urN linux/net/netrom/af_netrom.c linux-2.3.15-work/net/netrom/af_netrom.c
--- linux/net/netrom/af_netrom.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/netrom/af_netrom.c	Thu Aug 26 10:00:58 1999
@@ -1295,7 +1295,7 @@
 
 static struct net_device *dev_nr;
 
-__initfunc(void nr_proto_init(struct net_proto *pro))
+void __init nr_proto_init(struct net_proto *pro)
 {
 	int i;
 
diff -urN linux/net/netrom/sysctl_net_netrom.c linux-2.3.15-work/net/netrom/sysctl_net_netrom.c
--- linux/net/netrom/sysctl_net_netrom.c	Mon Jul  7 16:20:00 1997
+++ linux-2.3.15-work/net/netrom/sysctl_net_netrom.c	Thu Aug 26 10:01:11 1999
@@ -79,7 +79,7 @@
 	{0}
 };
 
-__initfunc(void nr_register_sysctl(void))
+void __init nr_register_sysctl(void)
 {
 	nr_table_header = register_sysctl_table(nr_root_table, 1);
 }
diff -urN linux/net/rose/af_rose.c linux-2.3.15-work/net/rose/af_rose.c
--- linux/net/rose/af_rose.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/rose/af_rose.c	Thu Aug 26 10:05:13 1999
@@ -1491,7 +1491,7 @@
 
 static struct net_device *dev_rose;
 
-__initfunc(void rose_proto_init(struct net_proto *pro))
+void __init rose_proto_init(struct net_proto *pro)
 {
 	int i;
 
diff -urN linux/net/rose/sysctl_net_rose.c linux-2.3.15-work/net/rose/sysctl_net_rose.c
--- linux/net/rose/sysctl_net_rose.c	Mon Jul  7 16:20:00 1997
+++ linux-2.3.15-work/net/rose/sysctl_net_rose.c	Thu Aug 26 10:05:27 1999
@@ -67,7 +67,7 @@
 	{0}
 };
 
-__initfunc(void rose_register_sysctl(void))
+void __init rose_register_sysctl(void)
 {
 	rose_table_header = register_sysctl_table(rose_root_table, 1);
 }
diff -urN linux/net/sched/cls_api.c linux-2.3.15-work/net/sched/cls_api.c
--- linux/net/sched/cls_api.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/sched/cls_api.c	Thu Aug 26 10:14:27 1999
@@ -433,7 +433,7 @@
 #endif
 
 
-__initfunc(int tc_filter_init(void))
+int __init tc_filter_init(void)
 {
 #ifdef CONFIG_RTNETLINK
 	struct rtnetlink_link *link_p = rtnetlink_links[PF_UNSPEC];
diff -urN linux/net/sched/sch_api.c linux-2.3.15-work/net/sched/sch_api.c
--- linux/net/sched/sch_api.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/sched/sch_api.c	Thu Aug 26 10:14:14 1999
@@ -1089,7 +1089,7 @@
 #endif
 
 #if PSCHED_CLOCK_SOURCE == PSCHED_CPU
-__initfunc(int psched_calibrate_clock(void))
+int __init psched_calibrate_clock(void)
 {
 	psched_time_t stamp, stamp1;
 	struct timeval tv, tv1;
@@ -1128,7 +1128,7 @@
 }
 #endif
 
-__initfunc(int pktsched_init(void))
+int __init pktsched_init(void)
 {
 #ifdef CONFIG_RTNETLINK
 	struct rtnetlink_link *link_p;
diff -urN linux/net/sched/sch_teql.c linux-2.3.15-work/net/sched/sch_teql.c
--- linux/net/sched/sch_teql.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/sched/sch_teql.c	Thu Aug 26 10:14:40 1999
@@ -467,7 +467,7 @@
 #ifdef MODULE
 int init_module(void)
 #else
-__initfunc(int teql_init(void))
+int __init teql_init(void)
 #endif
 {
 	int err;
diff -urN linux/net/wanrouter/wanmain.c linux-2.3.15-work/net/wanrouter/wanmain.c
--- linux/net/wanrouter/wanmain.c	Wed Aug 18 19:38:49 1999
+++ linux-2.3.15-work/net/wanrouter/wanmain.c	Thu Aug 26 10:05:58 1999
@@ -46,7 +46,7 @@
 #include <asm/byteorder.h>	/* htons(), etc. */
 #include <asm/uaccess.h>	/* copy_to/from_user */
 #include <linux/wanrouter.h>	/* WAN router API definitions */
-#include <linux/init.h>		/* __initfunc et al. */
+#include <linux/init.h>		/* __init et al. */
 
 /****** Defines and Macros **************************************************/
 
@@ -105,7 +105,7 @@
 #endif
 
 #ifndef MODULE
-__initfunc(int wanrouter_init(void))
+int __init wanrouter_init(void)
 {
 	int err;
 	extern int wanpipe_init(void),
diff -urN linux/net/wanrouter/wanproc.c linux-2.3.15-work/net/wanrouter/wanproc.c
--- linux/net/wanrouter/wanproc.c	Sun Jul  4 18:02:30 1999
+++ linux-2.3.15-work/net/wanrouter/wanproc.c	Thu Aug 26 10:13:37 1999
@@ -26,7 +26,7 @@
 #include <linux/malloc.h>	/* kmalloc(), kfree() */
 #include <linux/mm.h>		/* verify_area(), etc. */
 #include <linux/string.h>	/* inline mem*, str* functions */
-#include <linux/init.h>		/* __initfunc et al. */
+#include <linux/init.h>		/* __init et al. */
 #include <asm/segment.h>	/* kernel <-> user copy */
 #include <asm/byteorder.h>	/* htons(), etc. */
 #include <asm/uaccess.h>	/* copy_to_user */
@@ -269,7 +269,7 @@
  *	Initialize router proc interface.
  */
 
-__initfunc(int wanrouter_proc_init (void))
+int __init wanrouter_proc_init (void)
 {
 	int err = proc_register(proc_net, &proc_router);
 
@@ -543,7 +543,7 @@
  *	No /proc - output stubs
  */
  
-__initfunc(int wanrouter_proc_init(void))
+int __init wanrouter_proc_init(void)
 {
 	return 0;
 }
diff -urN linux/net/x25/af_x25.c linux-2.3.15-work/net/x25/af_x25.c
--- linux/net/x25/af_x25.c	Mon Aug 23 18:01:02 1999
+++ linux-2.3.15-work/net/x25/af_x25.c	Thu Aug 26 10:04:47 1999
@@ -1298,7 +1298,7 @@
 };
 #endif	
 
-__initfunc(void x25_proto_init(struct net_proto *pro))
+void __init x25_proto_init(struct net_proto *pro)
 {
 	sock_register(&x25_family_ops);
 
diff -urN linux/net/x25/sysctl_net_x25.c linux-2.3.15-work/net/x25/sysctl_net_x25.c
--- linux/net/x25/sysctl_net_x25.c	Mon Jul  7 16:20:00 1997
+++ linux-2.3.15-work/net/x25/sysctl_net_x25.c	Thu Aug 26 10:05:00 1999
@@ -47,7 +47,7 @@
 	{0}
 };
 
-__initfunc(void x25_register_sysctl(void))
+void __init x25_register_sysctl(void)
 {
 	x25_table_header = register_sysctl_table(x25_root_table, 1);
 }
