| From 78bb128948593b0d8b229dc79a13eae3a4e74e87 Mon Sep 17 00:00:00 2001 |
| From: Sasha Levin <sashal@kernel.org> |
| Date: Wed, 11 Feb 2026 08:23:15 +0000 |
| Subject: thermal: int340x: Fix sysfs group leak on DLVR registration failure |
| |
| From: Kaushlendra Kumar <kaushlendra.kumar@intel.com> |
| |
| [ Upstream commit 15176b818e048ccf6ef4b96db34eda7b7e98938a ] |
| |
| When DLVR sysfs group creation fails in proc_thermal_rfim_add(), |
| the function returns immediately without cleaning up the FIVR group |
| that may have been created earlier. |
| |
| Add proper error unwinding to remove the FIVR group before returning |
| failure. |
| |
| Signed-off-by: Kaushlendra Kumar <kaushlendra.kumar@intel.com> |
| Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> |
| Link: https://patch.msgid.link/LV3PR11MB876881B77D32A2854AD2908EF563A@LV3PR11MB8768.namprd11.prod.outlook.com |
| Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com> |
| Signed-off-by: Sasha Levin <sashal@kernel.org> |
| --- |
| .../thermal/intel/int340x_thermal/processor_thermal_rfim.c | 5 ++++- |
| 1 file changed, 4 insertions(+), 1 deletion(-) |
| |
| diff --git a/drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.c b/drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.c |
| index 546b70434004c..8bcac4adb9ece 100644 |
| --- a/drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.c |
| +++ b/drivers/thermal/intel/int340x_thermal/processor_thermal_rfim.c |
| @@ -348,8 +348,11 @@ int proc_thermal_rfim_add(struct pci_dev *pdev, struct proc_thermal_device *proc |
| |
| if (proc_priv->mmio_feature_mask & PROC_THERMAL_FEATURE_DLVR) { |
| ret = sysfs_create_group(&pdev->dev.kobj, &dlvr_attribute_group); |
| - if (ret) |
| + if (ret) { |
| + if (proc_priv->mmio_feature_mask & PROC_THERMAL_FEATURE_FIVR) |
| + sysfs_remove_group(&pdev->dev.kobj, &fivr_attribute_group); |
| return ret; |
| + } |
| } |
| |
| if (proc_priv->mmio_feature_mask & PROC_THERMAL_FEATURE_DVFS) { |
| -- |
| 2.51.0 |
| |