diff options
author | Armin Wolf <W_Armin@gmx.de> | 2021-11-12 18:14:40 +0100 |
---|---|---|
committer | Guenter Roeck <linux@roeck-us.net> | 2021-11-14 16:57:16 -0800 |
commit | dbd3e6eaf3d813939b28e8a66e29d81cdc836445 (patch) | |
tree | 2d50519632668c872f684d7900d2933b0f0a9d4f /drivers/hwmon | |
parent | 8383226583251858814d5521b542e7bf7dbadc4b (diff) | |
download | linux-dbd3e6eaf3d813939b28e8a66e29d81cdc836445.tar.bz2 |
hwmon: (dell-smm) Fix warning on /proc/i8k creation error
The removal function is called regardless of whether
/proc/i8k was created successfully or not, the later
causing a WARN() on module removal.
Fix that by only registering the removal function
if /proc/i8k was created successfully.
Tested on a Inspiron 3505.
Fixes: 039ae58503f3 ("hwmon: Allow to compile dell-smm-hwmon driver without /proc/i8k")
Signed-off-by: Armin Wolf <W_Armin@gmx.de>
Acked-by: Pali Rohár <pali@kernel.org>
Link: https://lore.kernel.org/r/20211112171440.59006-1-W_Armin@gmx.de
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
Diffstat (limited to 'drivers/hwmon')
-rw-r--r-- | drivers/hwmon/dell-smm-hwmon.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/hwmon/dell-smm-hwmon.c b/drivers/hwmon/dell-smm-hwmon.c index eaace478f508..5596c211f38d 100644 --- a/drivers/hwmon/dell-smm-hwmon.c +++ b/drivers/hwmon/dell-smm-hwmon.c @@ -627,10 +627,9 @@ static void __init i8k_init_procfs(struct device *dev) { struct dell_smm_data *data = dev_get_drvdata(dev); - /* Register the proc entry */ - proc_create_data("i8k", 0, NULL, &i8k_proc_ops, data); - - devm_add_action_or_reset(dev, i8k_exit_procfs, NULL); + /* Only register exit function if creation was successful */ + if (proc_create_data("i8k", 0, NULL, &i8k_proc_ops, data)) + devm_add_action_or_reset(dev, i8k_exit_procfs, NULL); } #else |