diff options
author | Dan Williams <dan.j.williams@intel.com> | 2017-04-18 09:56:31 -0700 |
---|---|---|
committer | Dan Williams <dan.j.williams@intel.com> | 2017-04-18 10:55:37 -0700 |
commit | fbabd829fe76a72a6444f64361cf8b2a9848639d (patch) | |
tree | d2fe120c94ec375c6cf44e822b2435ffa39819f0 /drivers/acpi/nfit/nfit.h | |
parent | 8b06b884cd98f7ec8b5028680b99fabfb7b3e192 (diff) | |
download | linux-fbabd829fe76a72a6444f64361cf8b2a9848639d.tar.bz2 |
acpi, nfit: fix module unload vs workqueue shutdown race
The workqueue may still be running when the devres callbacks start
firing to deallocate an acpi_nfit_desc instance. Stop and flush the
workqueue before letting any other devres de-allocations proceed.
Reported-by: Linda Knippers <linda.knippers@hpe.com>
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Diffstat (limited to 'drivers/acpi/nfit/nfit.h')
-rw-r--r-- | drivers/acpi/nfit/nfit.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/acpi/nfit/nfit.h b/drivers/acpi/nfit/nfit.h index fac098bfa585..58fb7d68e04a 100644 --- a/drivers/acpi/nfit/nfit.h +++ b/drivers/acpi/nfit/nfit.h @@ -239,6 +239,7 @@ static inline struct acpi_nfit_desc *to_acpi_desc( const u8 *to_nfit_uuid(enum nfit_uuids id); int acpi_nfit_init(struct acpi_nfit_desc *acpi_desc, void *nfit, acpi_size sz); +void acpi_nfit_shutdown(void *data); void __acpi_nfit_notify(struct device *dev, acpi_handle handle, u32 event); void __acpi_nvdimm_notify(struct device *dev, u32 event); int acpi_nfit_ctl(struct nvdimm_bus_descriptor *nd_desc, struct nvdimm *nvdimm, |