Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 626a7a4d authored by Borislav Petkov's avatar Borislav Petkov
Browse files

EDAC: Kill workqueue setup/teardown functions



We have the generic wrappers now, use those. edac_pci_workq_setup() had
an unused argument anyway.

Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
parent 09667606
Loading
Loading
Loading
Loading
+4 −39
Original line number Diff line number Diff line
@@ -551,41 +551,6 @@ static void edac_mc_workq_function(struct work_struct *work_req)
	edac_queue_work(&mci->work, msecs_to_jiffies(edac_mc_get_poll_msec()));
}

/*
 * 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)
 *
@@ -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);
+4 −31
Original line number Diff line number Diff line
@@ -215,35 +215,6 @@ static void edac_pci_workq_function(struct work_struct *work_req)
	mutex_unlock(&edac_pci_ctls_mutex);
}

/*
 * 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
 *
@@ -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",