summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorKurt Borja <kuurtb@gmail.com>2025-06-25 22:17:37 -0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-07-10 15:59:52 +0200
commit4747e892816aef636280b68a23e12f2a88631f15 (patch)
treec578a3e5f845a10f30b028e96c39b6e2f16a5d8b
parent50472dcf476dbcc125f7ab14f47287feb0d9119f (diff)
downloadlinux-4747e892816aef636280b68a23e12f2a88631f15.tar.gz
linux-4747e892816aef636280b68a23e12f2a88631f15.tar.bz2
linux-4747e892816aef636280b68a23e12f2a88631f15.zip
platform/x86: dell-wmi-sysman: Fix class device unregistration
[ Upstream commit 314e5ad4782d08858b3abc325c0487bd2abc23a1 ] Devices under the firmware_attributes_class do not have unique a dev_t. Therefore, device_unregister() should be used instead of device_destroy(), since the latter may match any device with a given dev_t. Fixes: e8a60aa7404b ("platform/x86: Introduce support for Systems Management Driver over WMI for Dell Systems") Signed-off-by: Kurt Borja <kuurtb@gmail.com> Link: https://lore.kernel.org/r/20250625-dest-fix-v1-3-3a0f342312bb@gmail.com Reviewed-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Signed-off-by: Ilpo Järvinen <ilpo.jarvinen@linux.intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--drivers/platform/x86/dell/dell-wmi-sysman/sysman.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/platform/x86/dell/dell-wmi-sysman/sysman.c b/drivers/platform/x86/dell/dell-wmi-sysman/sysman.c
index 660f00173f2e..fb5eb4342c6e 100644
--- a/drivers/platform/x86/dell/dell-wmi-sysman/sysman.c
+++ b/drivers/platform/x86/dell/dell-wmi-sysman/sysman.c
@@ -605,7 +605,7 @@ err_release_attributes_data:
release_attributes_data();
err_destroy_classdev:
- device_destroy(fw_attr_class, MKDEV(0, 0));
+ device_unregister(wmi_priv.class_dev);
err_unregister_class:
fw_attributes_class_put();
@@ -622,7 +622,7 @@ err_exit_bios_attr_set_interface:
static void __exit sysman_exit(void)
{
release_attributes_data();
- device_destroy(fw_attr_class, MKDEV(0, 0));
+ device_unregister(wmi_priv.class_dev);
fw_attributes_class_put();
exit_bios_attr_set_interface();
exit_bios_attr_pass_interface();