diff options
author | Borislav Petkov <bp@suse.de> | 2015-11-30 21:02:01 +0300 |
---|---|---|
committer | Borislav Petkov <bp@suse.de> | 2015-12-11 18:56:43 +0300 |
commit | c4cf3b454ecaa222aad9017932bd3b9c9325d931 (patch) | |
tree | 8e132709bdcaa097d84bba838bbd51a395607c3d /drivers/edac/edac_module.h | |
parent | e136fa016f2f06ca6e00d4f99894b4424f3f2a5c (diff) | |
download | linux-c4cf3b454ecaa222aad9017932bd3b9c9325d931.tar.xz |
EDAC: Rework workqueue handling
Hide the EDAC workqueue pointer in a separate compilation unit and add
accessors for the workqueue manipulations needed.
Remove edac_pci_reset_delay_period() which wasn't used by anything. It
seems it got added without a user with
91b99041c1d5 ("drivers/edac: updated PCI monitoring")
Signed-off-by: Borislav Petkov <bp@suse.de>
Diffstat (limited to 'drivers/edac/edac_module.h')
-rw-r--r-- | drivers/edac/edac_module.h | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/drivers/edac/edac_module.h b/drivers/edac/edac_module.h index 7388abfbf10b..cfaacb99c973 100644 --- a/drivers/edac/edac_module.h +++ b/drivers/edac/edac_module.h @@ -47,7 +47,12 @@ extern int edac_device_create_sysfs(struct edac_device_ctl_info *edac_dev); extern void edac_device_remove_sysfs(struct edac_device_ctl_info *edac_dev); /* edac core workqueue: single CPU mode */ -extern struct workqueue_struct *edac_workqueue; +int edac_workqueue_setup(void); +void edac_workqueue_teardown(void); +bool edac_queue_work(struct delayed_work *work, unsigned long delay); +bool edac_stop_work(struct delayed_work *work); +bool edac_mod_work(struct delayed_work *work, unsigned long delay); + extern void edac_device_reset_delay_period(struct edac_device_ctl_info *edac_dev, unsigned long value); extern void edac_mc_reset_delay_period(unsigned long value); |