powerpc/eeh: Skip eeh sysfs when eeh is disabled
authorWei Yang <weiyang@linux.vnet.ibm.com>
Wed, 4 Jun 2014 01:49:17 +0000 (09:49 +0800)
committerBenjamin Herrenschmidt <benh@kernel.crashing.org>
Thu, 5 Jun 2014 03:20:38 +0000 (13:20 +1000)
When eeh is not enabled, and hotplug two pci devices on the same bus, eeh
related sysfs would be added twice for the first added pci device. Since the
eeh_dev is not created when eeh is not enabled.

This patch adds the check, if eeh is not enabled, eeh sysfs will not be
created.

After applying this patch, following warnings are reduced:

sysfs: cannot create duplicate filename '/devices/pci0000:00/0000:00:00.0/eeh_mode'
sysfs: cannot create duplicate filename '/devices/pci0000:00/0000:00:00.0/eeh_config_addr'
sysfs: cannot create duplicate filename '/devices/pci0000:00/0000:00:00.0/eeh_pe_config_addr'

Signed-off-by: Wei Yang <weiyang@linux.vnet.ibm.com>
Acked-by: Gavin Shan <gwshan@linux.vnet.ibm.com>
Signed-off-by: Benjamin Herrenschmidt <benh@kernel.crashing.org>
arch/powerpc/kernel/eeh_sysfs.c

index 5d753d4f2c75938e5fdd2c75b821ff98877cd2c9..e2595ba4b720123ad89908b26bf9f9eeff35255c 100644 (file)
@@ -59,6 +59,9 @@ void eeh_sysfs_add_device(struct pci_dev *pdev)
        struct eeh_dev *edev = pci_dev_to_eeh_dev(pdev);
        int rc=0;
 
+       if (!eeh_enabled())
+               return;
+
        if (edev && (edev->mode & EEH_DEV_SYSFS))
                return;