i7core_edac: Initialize all priv vars before start polling
authorMauro Carvalho Chehab <mchehab@redhat.com>
Wed, 11 Aug 2010 02:24:16 +0000 (23:24 -0300)
committerMauro Carvalho Chehab <mchehab@redhat.com>
Sun, 24 Oct 2010 13:20:37 +0000 (11:20 -0200)
Signed-off-by: Mauro Carvalho Chehab <mchehab@redhat.com>
drivers/edac/i7core_edac.c

index a05f166d8917d72782bfc5eea4f066717dd6c9bf..d2b2ed8915fdda06e2f20569451eb7318dd65ea4 100644 (file)
@@ -1941,18 +1941,6 @@ static int i7core_register_mci(struct i7core_dev *i7core_dev,
                goto fail;
        }
 
-       /* allocating generic PCI control info */
-       pvt->i7core_pci = edac_pci_create_generic_ctl(&i7core_dev->pdev[0]->dev,
-                                                EDAC_MOD_STR);
-       if (unlikely(!pvt->i7core_pci)) {
-               printk(KERN_WARNING
-                       "%s(): Unable to create PCI control\n",
-                       __func__);
-               printk(KERN_WARNING
-                       "%s(): PCI error report via EDAC not setup\n",
-                       __func__);
-       }
-
        /* Default error mask is any memory */
        pvt->inject.channel = 0;
        pvt->inject.dimm = -1;
@@ -1965,6 +1953,18 @@ static int i7core_register_mci(struct i7core_dev *i7core_dev,
        pvt->edac_mce.priv = mci;
        pvt->edac_mce.check_error = i7core_mce_check_error;
 
+       /* allocating generic PCI control info */
+       pvt->i7core_pci = edac_pci_create_generic_ctl(&i7core_dev->pdev[0]->dev,
+                                                EDAC_MOD_STR);
+       if (unlikely(!pvt->i7core_pci)) {
+               printk(KERN_WARNING
+                       "%s(): Unable to create PCI control\n",
+                       __func__);
+               printk(KERN_WARNING
+                       "%s(): PCI error report via EDAC not setup\n",
+                       __func__);
+       }
+
        rc = edac_mce_register(&pvt->edac_mce);
        if (unlikely(rc < 0)) {
                debugf0("MC: " __FILE__