Re: [BK PATCH] PCI changes for 2.5.30

From: Greg KH (greg@kroah.com)
Date: Fri Aug 02 2002 - 18:55:12 EST


# This is a BitKeeper generated patch for the following project:
# Project Name: Linux kernel tree
# This patch format is intended for GNU patch command version 2.5 or higher.
# This patch includes the following deltas:
# ChangeSet 1.514 -> 1.515
# drivers/pci/names.c 1.3 -> 1.4
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 02/08/02 t-kouchi@mvf.biglobe.ne.jp 1.515
# [PATCH] [PATCH] PCI Hotplug patch to drivers/pci/names.c
#
# I found that both compaq and ibm PCI hotplug driver call pci_scan_slot(),
# which eventually call pci_name_device() in drivers/pci/names.c.
#
# pci_name_device() is declared as __devinit while other data are
# declared as __initdata.
# This may result in undefined behavior for example, /proc/pci.
# --------------------------------------------
#
diff -Nru a/drivers/pci/names.c b/drivers/pci/names.c
--- a/drivers/pci/names.c Fri Aug 2 16:49:27 2002
+++ b/drivers/pci/names.c Fri Aug 2 16:49:27 2002
@@ -32,18 +32,18 @@
  * real memory.. Parse the same file multiple times
  * to get all the info.
  */
-#define VENDOR( vendor, name ) static char __vendorstr_##vendor[] __initdata = name;
+#define VENDOR( vendor, name ) static char __vendorstr_##vendor[] __devinitdata = name;
 #define ENDVENDOR()
-#define DEVICE( vendor, device, name ) static char __devicestr_##vendor##device[] __initdata = name;
+#define DEVICE( vendor, device, name ) static char __devicestr_##vendor##device[] __devinitdata = name;
 #include "devlist.h"
 
 
-#define VENDOR( vendor, name ) static struct pci_device_info __devices_##vendor[] __initdata = {
+#define VENDOR( vendor, name ) static struct pci_device_info __devices_##vendor[] __devinitdata = {
 #define ENDVENDOR() };
 #define DEVICE( vendor, device, name ) { 0x##device, 0, __devicestr_##vendor##device },
 #include "devlist.h"
 
-static struct pci_vendor_info __initdata pci_vendor_list[] = {
+static struct pci_vendor_info __devinitdata pci_vendor_list[] = {
 #define VENDOR( vendor, name ) { 0x##vendor, sizeof(__devices_##vendor) / sizeof(struct pci_device_info), __vendorstr_##vendor, __devices_##vendor },
 #define ENDVENDOR()
 #define DEVICE( vendor, device, name )
@@ -121,7 +121,7 @@
 
 #else
 
-void __init pci_name_device(struct pci_dev *dev)
+void __devinit pci_name_device(struct pci_dev *dev)
 {
 }
 
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/



This archive was generated by hypermail 2b29 : Wed Aug 07 2002 - 22:00:21 EST