On Mon, Jun 06, 2022 at 01:54:55PM -0500, Eddie James wrote: > Unbinding the driver or removing the parent device at the same time > as using the OCC active sysfs file can cause the driver to unregister > the hwmon device twice. Prevent this by locking the occ mutex in the > shutdown function. > > Signed-off-by: Eddie James <eajames@xxxxxxxxxxxxx> Applied. Thanks, Guenter > --- > drivers/hwmon/occ/common.c | 5 +++++ > 1 file changed, 5 insertions(+) > > diff --git a/drivers/hwmon/occ/common.c b/drivers/hwmon/occ/common.c > index d78f4bebc718..ea070b91e5b9 100644 > --- a/drivers/hwmon/occ/common.c > +++ b/drivers/hwmon/occ/common.c > @@ -1228,10 +1228,15 @@ EXPORT_SYMBOL_GPL(occ_setup); > > void occ_shutdown(struct occ *occ) > { > + mutex_lock(&occ->lock); > + > occ_shutdown_sysfs(occ); > > if (occ->hwmon) > hwmon_device_unregister(occ->hwmon); > + occ->hwmon = NULL; > + > + mutex_unlock(&occ->lock); > } > EXPORT_SYMBOL_GPL(occ_shutdown); >