Re: [BK PATCH] More PCI Hotplug changes for 2.4.20-pre7

From: Greg KH (greg@kroah.com)
Date: Thu Sep 19 2002 - 19:59:49 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.689 -> 1.690
# drivers/hotplug/pci_hotplug_core.c 1.8 -> 1.9
# drivers/pci/pci.c 1.35 -> 1.36
# include/linux/pci.h 1.27 -> 1.28
# drivers/pci/proc.c 1.6 -> 1.7
#
# The following is the BitKeeper ChangeSet Log
# --------------------------------------------
# 02/09/19 greg@kroah.com 1.690
# PCI Hotplug: created /proc/bus/pci/slots for pcihpfs to be mounted on.
#
# proc_bus_pci_dir had to be exported for this to work properly.
# --------------------------------------------
#
diff -Nru a/drivers/hotplug/pci_hotplug_core.c b/drivers/hotplug/pci_hotplug_core.c
--- a/drivers/hotplug/pci_hotplug_core.c Thu Sep 19 17:18:53 2002
+++ b/drivers/hotplug/pci_hotplug_core.c Thu Sep 19 17:18:53 2002
@@ -38,6 +38,7 @@
 #include <linux/init.h>
 #include <linux/pci.h>
 #include <linux/dnotify.h>
+#include <linux/proc_fs.h>
 #include <asm/uaccess.h>
 #include "pci_hotplug.h"
 
@@ -57,7 +58,7 @@
 /* local variables */
 static int debug;
 
-#define DRIVER_VERSION "0.4"
+#define DRIVER_VERSION "0.5"
 #define DRIVER_AUTHOR "Greg Kroah-Hartman <greg@kroah.com>"
 #define DRIVER_DESC "PCI Hot Plug PCI Core"
 
@@ -126,6 +127,12 @@
         return NULL;
 }
 
+#ifdef CONFIG_PROC_FS
+extern struct proc_dir_entry *proc_bus_pci_dir;
+static struct proc_dir_entry *slotdir = NULL;
+static const char *slotdir_name = "slots";
+#endif
+
 static struct inode *pcihpfs_get_inode (struct super_block *sb, int mode, int dev)
 {
         struct inode *inode = new_inode(sb);
@@ -1259,6 +1266,11 @@
                 goto exit;
         }
 
+#ifdef CONFIG_PROC_FS
+ /* create mount point for pcihpfs */
+ slotdir = proc_mkdir(slotdir_name, proc_bus_pci_dir);
+#endif
+
         info (DRIVER_DESC " version: " DRIVER_VERSION "\n");
 
 exit:
@@ -1268,6 +1280,11 @@
 static void __exit pci_hotplug_exit (void)
 {
         unregister_filesystem(&pcihpfs_fs_type);
+
+#ifdef CONFIG_PROC_FS
+ if (slotdir)
+ remove_proc_entry(slotdir_name, proc_bus_pci_dir);
+#endif
 }
 
 module_init(pci_hotplug_init);
diff -Nru a/drivers/pci/pci.c b/drivers/pci/pci.c
--- a/drivers/pci/pci.c Thu Sep 19 17:18:53 2002
+++ b/drivers/pci/pci.c Thu Sep 19 17:18:53 2002
@@ -2158,6 +2158,7 @@
 EXPORT_SYMBOL(pci_proc_detach_device);
 EXPORT_SYMBOL(pci_proc_attach_bus);
 EXPORT_SYMBOL(pci_proc_detach_bus);
+EXPORT_SYMBOL(proc_bus_pci_dir);
 #endif
 #endif
 
diff -Nru a/drivers/pci/proc.c b/drivers/pci/proc.c
--- a/drivers/pci/proc.c Thu Sep 19 17:18:53 2002
+++ b/drivers/pci/proc.c Thu Sep 19 17:18:53 2002
@@ -369,7 +369,7 @@
         show: show_device
 };
 
-static struct proc_dir_entry *proc_bus_pci_dir;
+struct proc_dir_entry *proc_bus_pci_dir;
 
 int pci_proc_attach_device(struct pci_dev *dev)
 {
diff -Nru a/include/linux/pci.h b/include/linux/pci.h
--- a/include/linux/pci.h Thu Sep 19 17:18:53 2002
+++ b/include/linux/pci.h Thu Sep 19 17:18:53 2002
@@ -439,6 +439,7 @@
 extern struct list_head pci_root_buses; /* list of all known PCI buses */
 extern struct list_head pci_devices; /* list of all devices */
 
+extern struct proc_dir_entry *proc_bus_pci_dir;
 /*
  * Error values that may be returned by PCI functions.
  */
-
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 : Mon Sep 23 2002 - 22:00:29 EST