|
@@ -30,6 +30,7 @@
|
|
|
|
|
|
static DEFINE_MUTEX(edac_pci_ctls_mutex);
|
|
|
static LIST_HEAD(edac_pci_list);
|
|
|
+static atomic_t pci_indexes = ATOMIC_INIT(0);
|
|
|
|
|
|
/*
|
|
|
* edac_pci_alloc_ctl_info
|
|
@@ -317,6 +318,19 @@ void edac_pci_reset_delay_period(struct edac_pci_ctl_info *pci,
|
|
|
}
|
|
|
EXPORT_SYMBOL_GPL(edac_pci_reset_delay_period);
|
|
|
|
|
|
+/*
|
|
|
+ * edac_pci_alloc_index: Allocate a unique PCI index number
|
|
|
+ *
|
|
|
+ * Return:
|
|
|
+ * allocated index number
|
|
|
+ *
|
|
|
+ */
|
|
|
+int edac_pci_alloc_index(void)
|
|
|
+{
|
|
|
+ return atomic_inc_return(&pci_indexes) - 1;
|
|
|
+}
|
|
|
+EXPORT_SYMBOL_GPL(edac_pci_alloc_index);
|
|
|
+
|
|
|
/*
|
|
|
* edac_pci_add_device: Insert the 'edac_dev' structure into the
|
|
|
* edac_pci global list and create sysfs entries associated with
|