Commit 62456726 authored by John Feeney's avatar John Feeney Committed by Linus Torvalds

Fix 82875 PCI setup

The 82875 EDAC driver enables an otherwise-hidden PCI device, but doesn't
register it as a PCI device properly.  Therefore, the device list in
/proc/bus/pci/devices is different than the tree in /sys/bus/pci.  This
usually manifests as the X server failing to start, since it expects the
two lists to be consistent.
Signed-off-by: default avatarAdam Jackson <ajackson@redhat.com>
Cc: Henrique de Moraes Holschuh <hmh@hmh.eng.br>
Cc: Greg KH <greg@kroah.com>
Cc: Alan Cox <alan@lxorguk.ukuu.org.uk>
Cc: Doug Thompson <norsk5@xmission.com>
Cc: Andi Kleen <ak@suse.de>
Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
parent e63340ae
...@@ -261,10 +261,6 @@ static void i82875p_check(struct mem_ctl_info *mci) ...@@ -261,10 +261,6 @@ static void i82875p_check(struct mem_ctl_info *mci)
i82875p_process_error_info(mci, &info, 1); i82875p_process_error_info(mci, &info, 1);
} }
#ifdef CONFIG_PROC_FS
extern int pci_proc_attach_device(struct pci_dev *);
#endif
/* Return 0 on success or 1 on failure. */ /* Return 0 on success or 1 on failure. */
static int i82875p_setup_overfl_dev(struct pci_dev *pdev, static int i82875p_setup_overfl_dev(struct pci_dev *pdev,
struct pci_dev **ovrfl_pdev, void __iomem **ovrfl_window) struct pci_dev **ovrfl_pdev, void __iomem **ovrfl_window)
...@@ -287,17 +283,12 @@ static int i82875p_setup_overfl_dev(struct pci_dev *pdev, ...@@ -287,17 +283,12 @@ static int i82875p_setup_overfl_dev(struct pci_dev *pdev,
if (dev == NULL) if (dev == NULL)
return 1; return 1;
pci_bus_add_device(dev);
} }
*ovrfl_pdev = dev; *ovrfl_pdev = dev;
#ifdef CONFIG_PROC_FS
if ((dev->procent == NULL) && pci_proc_attach_device(dev)) {
i82875p_printk(KERN_ERR, "%s(): Failed to attach overflow "
"device\n", __func__);
return 1;
}
#endif /* CONFIG_PROC_FS */
if (pci_enable_device(dev)) { if (pci_enable_device(dev)) {
i82875p_printk(KERN_ERR, "%s(): Failed to enable overflow " i82875p_printk(KERN_ERR, "%s(): Failed to enable overflow "
"device\n", __func__); "device\n", __func__);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment