EDAC: Kill workqueue setup/teardown functions
authorBorislav Petkov <bp@suse.de>
Tue, 2 Feb 2016 10:06:41 +0000 (11:06 +0100)
committerBorislav Petkov <bp@suse.de>
Tue, 2 Feb 2016 10:38:43 +0000 (11:38 +0100)
We have the generic wrappers now, use those. edac_pci_workq_setup() had
an unused argument anyway.

Signed-off-by: Borislav Petkov <bp@suse.de>
drivers/edac/edac_mc.c
drivers/edac/edac_pci.c

index 50802c1..050493e 100644 (file)
@@ -552,41 +552,6 @@ static void edac_mc_workq_function(struct work_struct *work_req)
 }
 
 /*
- * edac_mc_workq_setup
- *     initialize a workq item for this mci
- *     passing in the new delay period in msec
- *
- *     locking model:
- *
- *             called with the mem_ctls_mutex held
- */
-static void edac_mc_workq_setup(struct mem_ctl_info *mci, unsigned msec)
-{
-       edac_dbg(0, "\n");
-
-       /* if this instance is not in the POLL state, then simply return */
-       if (mci->op_state != OP_RUNNING_POLL)
-               return;
-
-       INIT_DELAYED_WORK(&mci->work, edac_mc_workq_function);
-
-       edac_queue_work(&mci->work, msecs_to_jiffies(msec));
-}
-
-/*
- * edac_mc_workq_teardown
- *     stop the workq processing on this mci
- *
- *     locking model:
- *
- *             called WITHOUT lock held
- */
-static void edac_mc_workq_teardown(struct mem_ctl_info *mci)
-{
-       edac_stop_work(&mci->work);
-}
-
-/*
  * edac_mc_reset_delay_period(unsigned long value)
  *
  *     user space has updated our poll period value, need to
@@ -769,12 +734,12 @@ int edac_mc_add_mc_with_groups(struct mem_ctl_info *mci,
                goto fail1;
        }
 
-       /* If there IS a check routine, then we are running POLLED */
        if (mci->edac_check) {
-               /* This instance is NOW RUNNING */
                mci->op_state = OP_RUNNING_POLL;
 
-               edac_mc_workq_setup(mci, edac_mc_get_poll_msec());
+               INIT_DELAYED_WORK(&mci->work, edac_mc_workq_function);
+               edac_queue_work(&mci->work, msecs_to_jiffies(edac_mc_get_poll_msec()));
+
        } else {
                mci->op_state = OP_RUNNING_INTERRUPT;
        }
@@ -830,7 +795,7 @@ struct mem_ctl_info *edac_mc_del_mc(struct device *dev)
        mutex_unlock(&mem_ctls_mutex);
 
        if (mci->edac_check)
-               edac_mc_workq_teardown(mci);
+               edac_stop_work(&mci->work);
 
        /* remove from sysfs */
        edac_remove_sysfs_mci_device(mci);
index f0e8c3d..79945e0 100644 (file)
@@ -216,35 +216,6 @@ static void edac_pci_workq_function(struct work_struct *work_req)
 }
 
 /*
- * edac_pci_workq_setup()
- *     initialize a workq item for this edac_pci instance
- *     passing in the new delay period in msec
- *
- *     locking model:
- *             called when 'edac_pci_ctls_mutex' is locked
- */
-static void edac_pci_workq_setup(struct edac_pci_ctl_info *pci,
-                                unsigned int msec)
-{
-       edac_dbg(0, "\n");
-
-       INIT_DELAYED_WORK(&pci->work, edac_pci_workq_function);
-
-       edac_queue_work(&pci->work, msecs_to_jiffies(edac_pci_get_poll_msec()));
-}
-
-/*
- * edac_pci_workq_teardown()
- *     stop the workq processing on this edac_pci instance
- */
-static void edac_pci_workq_teardown(struct edac_pci_ctl_info *pci)
-{
-       edac_dbg(0, "\n");
-
-       edac_stop_work(&pci->work);
-}
-
-/*
  * edac_pci_alloc_index: Allocate a unique PCI index number
  *
  * Return:
@@ -290,7 +261,9 @@ int edac_pci_add_device(struct edac_pci_ctl_info *pci, int edac_idx)
        if (pci->edac_check) {
                pci->op_state = OP_RUNNING_POLL;
 
-               edac_pci_workq_setup(pci, 1000);
+               INIT_DELAYED_WORK(&pci->work, edac_pci_workq_function);
+               edac_queue_work(&pci->work, msecs_to_jiffies(edac_pci_get_poll_msec()));
+
        } else {
                pci->op_state = OP_RUNNING_INTERRUPT;
        }
@@ -349,7 +322,7 @@ struct edac_pci_ctl_info *edac_pci_del_device(struct device *dev)
        mutex_unlock(&edac_pci_ctls_mutex);
 
        if (pci->edac_check)
-               edac_pci_workq_teardown(pci);
+               edac_stop_work(&pci->work);
 
        edac_printk(KERN_INFO, EDAC_PCI,
                "Removed device %d for %s %s: DEV %s\n",