Forty-odd drivers are marking their pci_device_id tables as __initdata. 
Problem is, these tables get dropped away after boot but a subsequent PCI
list walk will touch them.

Disable all the __initdata's.  And don't use __devinitdata either: the PCI
lists are walked by PCI module load, regardless of CONFIG_HOTPLUG.



 25-akpm/arch/i386/kernel/cpu/cpufreq/gx-suspmod.c |    2 +-
 25-akpm/drivers/char/agp/ali-agp.c                |    2 +-
 25-akpm/drivers/char/agp/amd-k7-agp.c             |    2 +-
 25-akpm/drivers/char/agp/amd-k8-agp.c             |    2 +-
 25-akpm/drivers/char/agp/i460-agp.c               |    2 +-
 25-akpm/drivers/char/agp/intel-agp.c              |    2 +-
 25-akpm/drivers/char/agp/nvidia-agp.c             |    2 +-
 25-akpm/drivers/char/agp/sis-agp.c                |    2 +-
 25-akpm/drivers/char/agp/sworks-agp.c             |    2 +-
 25-akpm/drivers/char/agp/uninorth-agp.c           |    2 +-
 25-akpm/drivers/char/agp/via-agp.c                |    2 +-
 25-akpm/drivers/char/epca.c                       |    2 +-
 25-akpm/drivers/char/hw_random.c                  |    2 +-
 25-akpm/drivers/char/watchdog/amd7xx_tco.c        |    2 +-
 25-akpm/drivers/char/watchdog/i810-tco.c          |    2 +-
 25-akpm/drivers/char/watchdog/wdt_pci.c           |    2 +-
 25-akpm/drivers/isdn/hisax/config.c               |    2 +-
 25-akpm/drivers/isdn/hysdn/hysdn_init.c           |    2 +-
 25-akpm/drivers/net/acenic.c                      |    2 +-
 25-akpm/drivers/net/dgrs.c                        |    2 +-
 25-akpm/drivers/net/fc/iph5526.c                  |    2 +-
 25-akpm/drivers/net/hamachi.c                     |    2 +-
 25-akpm/drivers/net/hp100.c                       |    2 +-
 25-akpm/drivers/net/irda/donauboe.c               |    2 +-
 25-akpm/drivers/net/irda/toshoboe.c               |    2 +-
 25-akpm/drivers/net/skfp/skfddi.c                 |    2 +-
 25-akpm/drivers/net/sunhme.c                      |    2 +-
 25-akpm/drivers/net/tokenring/abyss.c             |    2 +-
 25-akpm/drivers/net/tokenring/lanstreamer.c       |    2 +-
 25-akpm/drivers/net/tokenring/tmspci.c            |    2 +-
 25-akpm/drivers/net/tulip/de2104x.c               |    2 +-
 25-akpm/drivers/net/wan/sdladrv.c                 |    2 +-
 25-akpm/drivers/scsi/tmscsim.c                    |    2 +-
 25-akpm/drivers/video/i810/i810_main.c            |    2 +-
 25-akpm/drivers/video/riva/fbdev.c                |    2 +-
 25-akpm/sound/oss/ali5455.c                       |    2 +-
 25-akpm/sound/oss/i810_audio.c                    |    2 +-
 25-akpm/sound/oss/maestro3.c                      |    2 +-
 25-akpm/sound/oss/via82cxxx_audio.c               |    2 +-
 39 files changed, 39 insertions(+), 39 deletions(-)

diff -puN arch/i386/kernel/cpu/cpufreq/gx-suspmod.c~pci_device_id-devinitdata arch/i386/kernel/cpu/cpufreq/gx-suspmod.c
--- 25/arch/i386/kernel/cpu/cpufreq/gx-suspmod.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/arch/i386/kernel/cpu/cpufreq/gx-suspmod.c	Wed Jul 30 14:16:51 2003
@@ -173,7 +173,7 @@ static int gx_freq_mult[16] = {
 /****************************************************************
  * 	Low Level chipset interface				*
  ****************************************************************/
-static struct pci_device_id gx_chipset_tbl[] __initdata = {
+static struct pci_device_id gx_chipset_tbl[] = {
         { PCI_VENDOR_ID_CYRIX, PCI_DEVICE_ID_CYRIX_5530_LEGACY, PCI_ANY_ID, PCI_ANY_ID },
         { PCI_VENDOR_ID_CYRIX, PCI_DEVICE_ID_CYRIX_5520, PCI_ANY_ID, PCI_ANY_ID },
         { PCI_VENDOR_ID_CYRIX, PCI_DEVICE_ID_CYRIX_5510, PCI_ANY_ID, PCI_ANY_ID },
diff -puN drivers/char/agp/ali-agp.c~pci_device_id-devinitdata drivers/char/agp/ali-agp.c
--- 25/drivers/char/agp/ali-agp.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/agp/ali-agp.c	Wed Jul 30 14:16:51 2003
@@ -363,7 +363,7 @@ static void __devexit agp_ali_remove(str
 	agp_put_bridge(bridge);
 }
 
-static struct pci_device_id agp_ali_pci_table[] __initdata = {
+static struct pci_device_id agp_ali_pci_table[] = {
 	{
 	.class		= (PCI_CLASS_BRIDGE_HOST << 8),
 	.class_mask	= ~0,
diff -puN drivers/char/agp/amd-k7-agp.c~pci_device_id-devinitdata drivers/char/agp/amd-k7-agp.c
--- 25/drivers/char/agp/amd-k7-agp.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/agp/amd-k7-agp.c	Wed Jul 30 14:16:51 2003
@@ -442,7 +442,7 @@ static void __devexit agp_amdk7_remove(s
 	agp_put_bridge(bridge);
 }
 
-static struct pci_device_id agp_amdk7_pci_table[] __initdata = {
+static struct pci_device_id agp_amdk7_pci_table[] = {
 	{
 	.class		= (PCI_CLASS_BRIDGE_HOST << 8),
 	.class_mask	= ~0,
diff -puN drivers/char/agp/amd-k8-agp.c~pci_device_id-devinitdata drivers/char/agp/amd-k8-agp.c
--- 25/drivers/char/agp/amd-k8-agp.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/agp/amd-k8-agp.c	Wed Jul 30 14:16:51 2003
@@ -349,7 +349,7 @@ static void __devexit agp_amdk8_remove(s
 	agp_put_bridge(bridge);
 }
 
-static struct pci_device_id agp_amdk8_pci_table[] __initdata = {
+static struct pci_device_id agp_amdk8_pci_table[] = {
 	{
 	.class		= (PCI_CLASS_BRIDGE_HOST << 8),
 	.class_mask	= ~0,
diff -puN drivers/char/agp/i460-agp.c~pci_device_id-devinitdata drivers/char/agp/i460-agp.c
--- 25/drivers/char/agp/i460-agp.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/agp/i460-agp.c	Wed Jul 30 14:16:51 2003
@@ -590,7 +590,7 @@ static void __devexit agp_intel_i460_rem
 	agp_put_bridge(bridge);
 }
 
-static struct pci_device_id agp_intel_i460_pci_table[] __initdata = {
+static struct pci_device_id agp_intel_i460_pci_table[] = {
 	{
 	.class		= (PCI_CLASS_BRIDGE_HOST << 8),
 	.class_mask	= ~0,
diff -puN drivers/char/agp/intel-agp.c~pci_device_id-devinitdata drivers/char/agp/intel-agp.c
--- 25/drivers/char/agp/intel-agp.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/agp/intel-agp.c	Wed Jul 30 14:16:51 2003
@@ -1417,7 +1417,7 @@ static int agp_intel_resume(struct pci_d
 	return 0;
 }
 
-static struct pci_device_id agp_intel_pci_table[] __initdata = {
+static struct pci_device_id agp_intel_pci_table[] = {
 	{
 	.class		= (PCI_CLASS_BRIDGE_HOST << 8),
 	.class_mask	= ~0,
diff -puN drivers/char/agp/nvidia-agp.c~pci_device_id-devinitdata drivers/char/agp/nvidia-agp.c
--- 25/drivers/char/agp/nvidia-agp.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/agp/nvidia-agp.c	Wed Jul 30 14:16:51 2003
@@ -338,7 +338,7 @@ static void __devexit agp_nvidia_remove(
 	agp_put_bridge(bridge);
 }
 
-static struct pci_device_id agp_nvidia_pci_table[] __initdata = {
+static struct pci_device_id agp_nvidia_pci_table[] = {
 	{
 	.class		= (PCI_CLASS_BRIDGE_HOST << 8),
 	.class_mask	= ~0,
diff -puN drivers/char/agp/sis-agp.c~pci_device_id-devinitdata drivers/char/agp/sis-agp.c
--- 25/drivers/char/agp/sis-agp.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/agp/sis-agp.c	Wed Jul 30 14:16:51 2003
@@ -224,7 +224,7 @@ static void __devexit agp_sis_remove(str
 	agp_put_bridge(bridge);
 }
 
-static struct pci_device_id agp_sis_pci_table[] __initdata = {
+static struct pci_device_id agp_sis_pci_table[] = {
 	{
 	.class		= (PCI_CLASS_BRIDGE_HOST << 8),
 	.class_mask	= ~0,
diff -puN drivers/char/agp/sworks-agp.c~pci_device_id-devinitdata drivers/char/agp/sworks-agp.c
--- 25/drivers/char/agp/sworks-agp.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/agp/sworks-agp.c	Wed Jul 30 14:16:51 2003
@@ -508,7 +508,7 @@ static void __devexit agp_serverworks_re
 	agp_put_bridge(bridge);
 }
 
-static struct pci_device_id agp_serverworks_pci_table[] __initdata = {
+static struct pci_device_id agp_serverworks_pci_table[] = {
 	{
 	.class		= (PCI_CLASS_BRIDGE_HOST << 8),
 	.class_mask	= ~0,
diff -puN drivers/char/agp/uninorth-agp.c~pci_device_id-devinitdata drivers/char/agp/uninorth-agp.c
--- 25/drivers/char/agp/uninorth-agp.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/agp/uninorth-agp.c	Wed Jul 30 14:16:51 2003
@@ -358,7 +358,7 @@ static void __devexit agp_uninorth_remov
 	agp_put_bridge(bridge);
 }
 
-static struct pci_device_id agp_uninorth_pci_table[] __initdata = {
+static struct pci_device_id agp_uninorth_pci_table[] = {
 	{
 	.class		= (PCI_CLASS_BRIDGE_HOST << 8),
 	.class_mask	= ~0,
diff -puN drivers/char/agp/via-agp.c~pci_device_id-devinitdata drivers/char/agp/via-agp.c
--- 25/drivers/char/agp/via-agp.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/agp/via-agp.c	Wed Jul 30 14:16:51 2003
@@ -434,7 +434,7 @@ static void __devexit agp_via_remove(str
 	agp_put_bridge(bridge);
 }
 
-static struct pci_device_id agp_via_pci_table[] __initdata = {
+static struct pci_device_id agp_via_pci_table[] = {
 	{
 	.class		= (PCI_CLASS_BRIDGE_HOST << 8),
 	.class_mask	= ~0,
diff -puN drivers/char/epca.c~pci_device_id-devinitdata drivers/char/epca.c
--- 25/drivers/char/epca.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/epca.c	Wed Jul 30 14:16:51 2003
@@ -3945,7 +3945,7 @@ err_out:
 }
 
 
-static struct pci_device_id epca_pci_tbl[] __initdata = {
+static struct pci_device_id epca_pci_tbl[] = {
 	{ PCI_VENDOR_DIGI, PCI_DEVICE_XR, PCI_ANY_ID, PCI_ANY_ID, 0, 0, brd_xr },
 	{ PCI_VENDOR_DIGI, PCI_DEVICE_XEM, PCI_ANY_ID, PCI_ANY_ID, 0, 0, brd_xem },
 	{ PCI_VENDOR_DIGI, PCI_DEVICE_CX, PCI_ANY_ID, PCI_ANY_ID, 0, 0, brd_cx },
diff -puN drivers/char/hw_random.c~pci_device_id-devinitdata drivers/char/hw_random.c
--- 25/drivers/char/hw_random.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/hw_random.c	Wed Jul 30 14:16:51 2003
@@ -149,7 +149,7 @@ static struct rng_operations rng_vendor_
  * register a pci_driver, because someone else might one day
  * want to register another driver on the same PCI id.
  */
-static struct pci_device_id rng_pci_tbl[] __initdata = {
+static struct pci_device_id rng_pci_tbl[] = {
 	{ 0x1022, 0x7443, PCI_ANY_ID, PCI_ANY_ID, 0, 0, rng_hw_amd },
 	{ 0x1022, 0x746b, PCI_ANY_ID, PCI_ANY_ID, 0, 0, rng_hw_amd },
 
diff -puN drivers/char/watchdog/amd7xx_tco.c~pci_device_id-devinitdata drivers/char/watchdog/amd7xx_tco.c
--- 25/drivers/char/watchdog/amd7xx_tco.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/watchdog/amd7xx_tco.c	Wed Jul 30 14:16:51 2003
@@ -294,7 +294,7 @@ static struct miscdevice amdtco_miscdev 
 	.fops	= &amdtco_fops
 };
 
-static struct pci_device_id amdtco_pci_tbl[] __initdata = {
+static struct pci_device_id amdtco_pci_tbl[] = {
 	/* AMD 766 PCI_IDs here */
 	{ PCI_VENDOR_ID_AMD, PCI_DEVICE_ID_AMD_OPUS_7443, PCI_ANY_ID, PCI_ANY_ID, },
 	{ 0, }
diff -puN drivers/char/watchdog/i810-tco.c~pci_device_id-devinitdata drivers/char/watchdog/i810-tco.c
--- 25/drivers/char/watchdog/i810-tco.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/watchdog/i810-tco.c	Wed Jul 30 14:16:51 2003
@@ -301,7 +301,7 @@ static int i810tco_ioctl (struct inode *
  * register a pci_driver, because someone else might one day
  * want to register another driver on the same PCI id.
  */
-static struct pci_device_id i810tco_pci_tbl[] __initdata = {
+static struct pci_device_id i810tco_pci_tbl[] = {
 	{ PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801AA_0,	PCI_ANY_ID, PCI_ANY_ID, },
 	{ PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801AB_0,	PCI_ANY_ID, PCI_ANY_ID, },
 	{ PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801BA_0,	PCI_ANY_ID, PCI_ANY_ID, },
diff -puN drivers/char/watchdog/wdt_pci.c~pci_device_id-devinitdata drivers/char/watchdog/wdt_pci.c
--- 25/drivers/char/watchdog/wdt_pci.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/char/watchdog/wdt_pci.c	Wed Jul 30 14:16:51 2003
@@ -590,7 +590,7 @@ static void __devexit wdtpci_remove_one 
 }
 
 
-static struct pci_device_id wdtpci_pci_tbl[] __initdata = {
+static struct pci_device_id wdtpci_pci_tbl[] = {
 	{
 		.vendor	   = PCI_VENDOR_ID_ACCESSIO,
 		.device	   = PCI_DEVICE_ID_WDG_CSM,
diff -puN drivers/isdn/hisax/config.c~pci_device_id-devinitdata drivers/isdn/hisax/config.c
--- 25/drivers/isdn/hisax/config.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/isdn/hisax/config.c	Wed Jul 30 14:16:51 2003
@@ -2113,7 +2113,7 @@ hisax_release_resources(struct IsdnCardS
 
 #include <linux/pci.h>
 
-static struct pci_device_id hisax_pci_tbl[] __initdata = {
+static struct pci_device_id hisax_pci_tbl[] = {
 #ifdef CONFIG_HISAX_FRITZPCI
 	{PCI_VENDOR_ID_AVM,      PCI_DEVICE_ID_AVM_A1,           PCI_ANY_ID, PCI_ANY_ID},
 #endif
diff -puN drivers/isdn/hysdn/hysdn_init.c~pci_device_id-devinitdata drivers/isdn/hysdn/hysdn_init.c
--- 25/drivers/isdn/hysdn/hysdn_init.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/isdn/hysdn/hysdn_init.c	Wed Jul 30 14:16:51 2003
@@ -21,7 +21,7 @@
 
 #include "hysdn_defs.h"
 
-static struct pci_device_id hysdn_pci_tbl[] __initdata = {
+static struct pci_device_id hysdn_pci_tbl[] = {
 	{PCI_VENDOR_ID_HYPERCOPE, PCI_DEVICE_ID_HYPERCOPE_PLX, PCI_ANY_ID, PCI_SUBDEVICE_ID_HYPERCOPE_METRO},
 	{PCI_VENDOR_ID_HYPERCOPE, PCI_DEVICE_ID_HYPERCOPE_PLX, PCI_ANY_ID, PCI_SUBDEVICE_ID_HYPERCOPE_CHAMP2},
 	{PCI_VENDOR_ID_HYPERCOPE, PCI_DEVICE_ID_HYPERCOPE_PLX, PCI_ANY_ID, PCI_SUBDEVICE_ID_HYPERCOPE_ERGO},
diff -puN drivers/net/acenic.c~pci_device_id-devinitdata drivers/net/acenic.c
--- 25/drivers/net/acenic.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/acenic.c	Wed Jul 30 14:16:51 2003
@@ -132,7 +132,7 @@
 #endif
 
 #if LINUX_VERSION_CODE >= 0x20400
-static struct pci_device_id acenic_pci_tbl[] __initdata = {
+static struct pci_device_id acenic_pci_tbl[] = {
 	{ PCI_VENDOR_ID_ALTEON, PCI_DEVICE_ID_ALTEON_ACENIC_FIBRE,
 	  PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_NETWORK_ETHERNET << 8, 0xffff00, },
 	{ PCI_VENDOR_ID_ALTEON, PCI_DEVICE_ID_ALTEON_ACENIC_COPPER,
diff -puN drivers/net/dgrs.c~pci_device_id-devinitdata drivers/net/dgrs.c
--- 25/drivers/net/dgrs.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/dgrs.c	Wed Jul 30 14:16:51 2003
@@ -120,7 +120,7 @@ typedef unsigned int bool;
 #include "dgrs_asstruct.h"
 #include "dgrs_bcomm.h"
 
-static struct pci_device_id dgrs_pci_tbl[] __initdata = {
+static struct pci_device_id dgrs_pci_tbl[] = {
 	{ SE6_PCI_VENDOR_ID, SE6_PCI_DEVICE_ID, PCI_ANY_ID, PCI_ANY_ID, },
 	{ }			/* Terminating entry */
 };
diff -puN drivers/net/fc/iph5526.c~pci_device_id-devinitdata drivers/net/fc/iph5526.c
--- 25/drivers/net/fc/iph5526.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/fc/iph5526.c	Wed Jul 30 14:16:51 2003
@@ -110,7 +110,7 @@ static const char *version =
 #define ALIGNED_ADDR(addr, len) ((((unsigned long)(addr) + (len - 1)) & ~(len - 1)) - (unsigned long)(addr))
 
 
-static struct pci_device_id iph5526_pci_tbl[] __initdata = {
+static struct pci_device_id iph5526_pci_tbl[] = {
 	{ PCI_VENDOR_ID_INTERPHASE, PCI_DEVICE_ID_INTERPHASE_5526, PCI_ANY_ID, PCI_ANY_ID, },
 	{ PCI_VENDOR_ID_INTERPHASE, PCI_DEVICE_ID_INTERPHASE_55x6, PCI_ANY_ID, PCI_ANY_ID, },
 	{ }			/* Terminating entry */
diff -puN drivers/net/hamachi.c~pci_device_id-devinitdata drivers/net/hamachi.c
--- 25/drivers/net/hamachi.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/hamachi.c	Wed Jul 30 14:16:51 2003
@@ -1982,7 +1982,7 @@ static void __devexit hamachi_remove_one
 	}
 }
 
-static struct pci_device_id hamachi_pci_tbl[] __initdata = {
+static struct pci_device_id hamachi_pci_tbl[] = {
 	{ 0x1318, 0x0911, PCI_ANY_ID, PCI_ANY_ID, },
 	{ 0, }
 };
diff -puN drivers/net/hp100.c~pci_device_id-devinitdata drivers/net/hp100.c
--- 25/drivers/net/hp100.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/hp100.c	Wed Jul 30 14:16:51 2003
@@ -284,7 +284,7 @@ static struct hp100_pci_id hp100_pci_ids
 
 #define HP100_PCI_IDS_SIZE	(sizeof(hp100_pci_ids)/sizeof(struct hp100_pci_id))
 
-static struct pci_device_id hp100_pci_tbl[] __initdata = {
+static struct pci_device_id hp100_pci_tbl[] = {
 	{PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_J2585A, PCI_ANY_ID, PCI_ANY_ID,},
 	{PCI_VENDOR_ID_HP, PCI_DEVICE_ID_HP_J2585B, PCI_ANY_ID, PCI_ANY_ID,},
 	{PCI_VENDOR_ID_COMPEX, PCI_DEVICE_ID_COMPEX_ENET100VG4, PCI_ANY_ID, PCI_ANY_ID,},
diff -puN drivers/net/irda/donauboe.c~pci_device_id-devinitdata drivers/net/irda/donauboe.c
--- 25/drivers/net/irda/donauboe.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/irda/donauboe.c	Wed Jul 30 14:16:51 2003
@@ -189,7 +189,7 @@ static char *rcsid =
 #define CONFIG0H_DMA_ON_NORX CONFIG0H_DMA_OFF| OBOE_CONFIG0H_ENDMAC
 #define CONFIG0H_DMA_ON CONFIG0H_DMA_ON_NORX | OBOE_CONFIG0H_ENRX
 
-static struct pci_device_id toshoboe_pci_tbl[] __initdata = {
+static struct pci_device_id toshoboe_pci_tbl[] = {
 	{ PCI_VENDOR_ID_TOSHIBA, PCI_DEVICE_ID_FIR701, PCI_ANY_ID, PCI_ANY_ID, },
 	{ PCI_VENDOR_ID_TOSHIBA, PCI_DEVICE_ID_FIRD01, PCI_ANY_ID, PCI_ANY_ID, },
 	{ }			/* Terminating entry */
diff -puN drivers/net/irda/toshoboe.c~pci_device_id-devinitdata drivers/net/irda/toshoboe.c
--- 25/drivers/net/irda/toshoboe.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/irda/toshoboe.c	Wed Jul 30 14:16:51 2003
@@ -77,7 +77,7 @@ static char *rcsid = "$Id: toshoboe.c,v 
 
 #define PCI_DEVICE_ID_FIR701b  0x0d01
 
-static struct pci_device_id toshoboe_pci_tbl[] __initdata = {
+static struct pci_device_id toshoboe_pci_tbl[] = {
 	{ PCI_VENDOR_ID_TOSHIBA, PCI_DEVICE_ID_FIR701, PCI_ANY_ID, PCI_ANY_ID, },
 	{ PCI_VENDOR_ID_TOSHIBA, PCI_DEVICE_ID_FIR701b, PCI_ANY_ID, PCI_ANY_ID, },
 	{ }			/* Terminating entry */
diff -puN drivers/net/skfp/skfddi.c~pci_device_id-devinitdata drivers/net/skfp/skfddi.c
--- 25/drivers/net/skfp/skfddi.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/skfp/skfddi.c	Wed Jul 30 14:16:51 2003
@@ -180,7 +180,7 @@ extern void mac_clear_multicast(struct s
 extern void enable_tx_irq(struct s_smc *smc, u_short queue);
 extern void mac_drv_clear_txd(struct s_smc *smc);
 
-static struct pci_device_id skfddi_pci_tbl[] __initdata = {
+static struct pci_device_id skfddi_pci_tbl[] = {
 	{ PCI_VENDOR_ID_SK, PCI_DEVICE_ID_SK_FP, PCI_ANY_ID, PCI_ANY_ID, },
 	{ }			/* Terminating entry */
 };
diff -puN drivers/net/sunhme.c~pci_device_id-devinitdata drivers/net/sunhme.c
--- 25/drivers/net/sunhme.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/sunhme.c	Wed Jul 30 14:16:51 2003
@@ -179,7 +179,7 @@ static __inline__ void tx_dump_ring(stru
    where it could be referenced at any time due to hot plugging,
    it should be changed to __devinitdata. */
 
-struct pci_device_id happymeal_pci_ids[] __initdata = {
+struct pci_device_id happymeal_pci_ids[] = {
 	{
 	  .vendor	= PCI_VENDOR_ID_SUN,
 	  .device	= PCI_DEVICE_ID_SUN_HAPPYMEAL,
diff -puN drivers/net/tokenring/abyss.c~pci_device_id-devinitdata drivers/net/tokenring/abyss.c
--- 25/drivers/net/tokenring/abyss.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/tokenring/abyss.c	Wed Jul 30 14:16:51 2003
@@ -45,7 +45,7 @@ static char version[] __initdata =
 
 #define ABYSS_IO_EXTENT 64
 
-static struct pci_device_id abyss_pci_tbl[] __initdata = {
+static struct pci_device_id abyss_pci_tbl[] = {
 	{ PCI_VENDOR_ID_MADGE, PCI_DEVICE_ID_MADGE_MK2,
 	  PCI_ANY_ID, PCI_ANY_ID, PCI_CLASS_NETWORK_TOKEN_RING << 8, 0x00ffffff, },
 	{ }			/* Terminating entry */
diff -puN drivers/net/tokenring/lanstreamer.c~pci_device_id-devinitdata drivers/net/tokenring/lanstreamer.c
--- 25/drivers/net/tokenring/lanstreamer.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/tokenring/lanstreamer.c	Wed Jul 30 14:16:51 2003
@@ -140,7 +140,7 @@
 static char version[] = "LanStreamer.c v0.4.0 03/08/01 - Mike Sullivan\n"
                         "              v0.5.3 11/13/02 - Kent Yoder";
 
-static struct pci_device_id streamer_pci_tbl[] __initdata = {
+static struct pci_device_id streamer_pci_tbl[] = {
 	{ PCI_VENDOR_ID_IBM, PCI_DEVICE_ID_IBM_TR, PCI_ANY_ID, PCI_ANY_ID,},
 	{}	/* terminating entry */
 };
diff -puN drivers/net/tokenring/tmspci.c~pci_device_id-devinitdata drivers/net/tokenring/tmspci.c
--- 25/drivers/net/tokenring/tmspci.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/tokenring/tmspci.c	Wed Jul 30 14:16:51 2003
@@ -57,7 +57,7 @@ static struct card_info card_info_table[
 	{ {0x03, 0x01}, "3Com Token Link Velocity"},
 };
 
-static struct pci_device_id tmspci_pci_tbl[] __initdata = {
+static struct pci_device_id tmspci_pci_tbl[] = {
 	{ PCI_VENDOR_ID_COMPAQ, PCI_DEVICE_ID_COMPAQ_TOKENRING, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
 	{ PCI_VENDOR_ID_SYSKONNECT, PCI_DEVICE_ID_SYSKONNECT_TR, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 1 },
 	{ PCI_VENDOR_ID_TCONRAD, PCI_DEVICE_ID_TCONRAD_TOKENRING, PCI_ANY_ID, PCI_ANY_ID, 0, 0, 2 },
diff -puN drivers/net/tulip/de2104x.c~pci_device_id-devinitdata drivers/net/tulip/de2104x.c
--- 25/drivers/net/tulip/de2104x.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/tulip/de2104x.c	Wed Jul 30 14:16:51 2003
@@ -329,7 +329,7 @@ static void de21041_media_timer (unsigne
 static unsigned int de_ok_to_advertise (struct de_private *de, u32 new_media);
 
 
-static struct pci_device_id de_pci_tbl[] __initdata = {
+static struct pci_device_id de_pci_tbl[] = {
 	{ PCI_VENDOR_ID_DEC, PCI_DEVICE_ID_DEC_TULIP,
 	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
 	{ PCI_VENDOR_ID_DEC, PCI_DEVICE_ID_DEC_TULIP_PLUS,
diff -puN drivers/net/wan/sdladrv.c~pci_device_id-devinitdata drivers/net/wan/sdladrv.c
--- 25/drivers/net/wan/sdladrv.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/net/wan/sdladrv.c	Wed Jul 30 14:16:51 2003
@@ -201,7 +201,7 @@ static int pci_probe(sdlahw_t *hw);
  * Note: All data must be explicitly initialized!!!
  */
 
-static struct pci_device_id sdladrv_pci_tbl[] __initdata = {
+static struct pci_device_id sdladrv_pci_tbl[] = {
 	{ V3_VENDOR_ID, V3_DEVICE_ID, PCI_ANY_ID, PCI_ANY_ID, },
 	{ }			/* Terminating entry */
 };
diff -puN drivers/scsi/tmscsim.c~pci_device_id-devinitdata drivers/scsi/tmscsim.c
--- 25/drivers/scsi/tmscsim.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/scsi/tmscsim.c	Wed Jul 30 14:16:51 2003
@@ -274,7 +274,7 @@
 #endif
 
 #if LINUX_VERSION_CODE >= KERNEL_VERSION(2,3,99)
-static struct pci_device_id tmscsim_pci_tbl[] __initdata = {
+static struct pci_device_id tmscsim_pci_tbl[] = {
 	{
 		.vendor		= PCI_VENDOR_ID_AMD,
 		.device		= PCI_DEVICE_ID_AMD53C974,
diff -puN drivers/video/i810/i810_main.c~pci_device_id-devinitdata drivers/video/i810/i810_main.c
--- 25/drivers/video/i810/i810_main.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/video/i810/i810_main.c	Wed Jul 30 14:16:51 2003
@@ -66,7 +66,7 @@ static const char *i810_pci_list[] __ini
 	"Intel(R) 815 (Internal Graphics with AGP) Framebuffer Device"
 };
 
-static struct pci_device_id i810fb_pci_tbl[] __initdata = {
+static struct pci_device_id i810fb_pci_tbl[] = {
 	{ PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82810_IG1,
 	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0 },
 	{ PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82810_IG3,
diff -puN drivers/video/riva/fbdev.c~pci_device_id-devinitdata drivers/video/riva/fbdev.c
--- 25/drivers/video/riva/fbdev.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/drivers/video/riva/fbdev.c	Wed Jul 30 14:16:51 2003
@@ -193,7 +193,7 @@ static struct riva_chip_info {
 	{ "Quadro4-700-XGL", NV_ARCH_20 }
 };
 
-static struct pci_device_id rivafb_pci_tbl[] __initdata = {
+static struct pci_device_id rivafb_pci_tbl[] = {
 	{ PCI_VENDOR_ID_NVIDIA_SGS, PCI_DEVICE_ID_NVIDIA_SGS_RIVA128,
 	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, CH_RIVA_128 },
 	{ PCI_VENDOR_ID_NVIDIA, PCI_DEVICE_ID_NVIDIA_TNT,
diff -puN sound/oss/ali5455.c~pci_device_id-devinitdata sound/oss/ali5455.c
--- 25/sound/oss/ali5455.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/sound/oss/ali5455.c	Wed Jul 30 14:16:51 2003
@@ -216,7 +216,7 @@ static char *card_names[] = {
 	"ALI 5455"
 };
 
-static struct pci_device_id ali_pci_tbl[] __initdata = {
+static struct pci_device_id ali_pci_tbl[] = {
 	{PCI_VENDOR_ID_ALI, PCI_DEVICE_ID_ALI_5455,
 	 PCI_ANY_ID, PCI_ANY_ID, 0, 0, ALI5455},
 	{0,}
diff -puN sound/oss/i810_audio.c~pci_device_id-devinitdata sound/oss/i810_audio.c
--- 25/sound/oss/i810_audio.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/sound/oss/i810_audio.c	Wed Jul 30 14:16:51 2003
@@ -316,7 +316,7 @@ static struct {
 	/*@FIXME to be verified*/	{  3, 0x0001 }, /* AMD8111 */
 };
 
-static struct pci_device_id i810_pci_tbl [] __initdata = {
+static struct pci_device_id i810_pci_tbl [] = {
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82801,
 	 PCI_ANY_ID, PCI_ANY_ID, 0, 0, ICH82801AA},
 	{PCI_VENDOR_ID_INTEL, PCI_DEVICE_ID_INTEL_82901,
diff -puN sound/oss/maestro3.c~pci_device_id-devinitdata sound/oss/maestro3.c
--- 25/sound/oss/maestro3.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/sound/oss/maestro3.c	Wed Jul 30 14:16:51 2003
@@ -328,7 +328,7 @@ static char *card_names[] = {
 .driver_data = TYPE,				\
 }
 
-static struct pci_device_id m3_id_table[] __initdata = {
+static struct pci_device_id m3_id_table[] = {
     M3_DEVICE(0x1988, ESS_ALLEGRO),
     M3_DEVICE(0x1998, ESS_MAESTRO3),
     M3_DEVICE(0x199a, ESS_MAESTRO3HW),
diff -puN sound/oss/via82cxxx_audio.c~pci_device_id-devinitdata sound/oss/via82cxxx_audio.c
--- 25/sound/oss/via82cxxx_audio.c~pci_device_id-devinitdata	Wed Jul 30 14:16:51 2003
+++ 25-akpm/sound/oss/via82cxxx_audio.c	Wed Jul 30 14:16:51 2003
@@ -387,7 +387,7 @@ static inline void via_card_cleanup_proc
  */
 
 
-static struct pci_device_id via_pci_tbl[] __initdata = {
+static struct pci_device_id via_pci_tbl[] = {
 	{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_82C686_5,
 	  PCI_ANY_ID, PCI_ANY_ID, 0, 0, 0},
 	{ PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_8233_5,

_