On Tue, Jul 15, 2025 at 03:34:51PM -0300, Kurt Borja wrote:
Hi Greg,
On Tue Jul 15, 2025 at 10:14 AM -03, Greg Kroah-Hartman wrote:
6.1-stable review patch. If anyone has any objections, please let me know.
From: Zhang Rui rui.zhang@intel.com
[ Upstream commit 4f30f946f27b7f044cf8f3f1f353dee1dcd3517a ]
Many error paths in tlmi_sysfs_init() lead to sysfs groups being removed when they were not even created.
Fix this by letting the kobject core manage these groups through their kobj_type's defult_groups.
Fixes: a40cd7ef22fb ("platform/x86: think-lmi: Add WMI interface support on Lenovo platforms") Cc: stable@vger.kernel.org Reviewed-by: Mark Pearson mpearson-lenovo@squebb.ca Reviewed-by: Ilpo Järvinen ilpo.jarvinen@linux.intel.com Signed-off-by: Kurt Borja kuurtb@gmail.com Link: https://lore.kernel.org/r/20250630-lmi-fix-v3-3-ce4f81c9c481@gmail.com Signed-off-by: Ilpo Järvinen ilpo.jarvinen@linux.intel.com Signed-off-by: Sasha Levin sashal@kernel.org
drivers/powercap/intel_rapl_common.c | 22 ++++++++++++++++++++-- 1 file changed, 20 insertions(+), 2 deletions(-)
diff --git a/drivers/powercap/intel_rapl_common.c b/drivers/powercap/intel_rapl_common.c index 26d00b1853b42..02787682b395e 100644 --- a/drivers/powercap/intel_rapl_common.c +++ b/drivers/powercap/intel_rapl_common.c @@ -21,6 +21,7 @@ #include <linux/intel_rapl.h> #include <linux/processor.h> #include <linux/platform_device.h> +#include <linux/string_helpers.h>
#include <asm/iosf_mbi.h> #include <asm/cpu_device_id.h> @@ -227,17 +228,34 @@ static int find_nr_power_limit(struct rapl_domain *rd) static int set_domain_enable(struct powercap_zone *power_zone, bool mode) { struct rapl_domain *rd = power_zone_to_rapl_domain(power_zone);
u64 val;
int ret;
if (rd->state & DOMAIN_STATE_BIOS_LOCKED) return -EACCES;
cpus_read_lock();
- rapl_write_data_raw(rd, PL1_ENABLE, mode);
- ret = rapl_write_data_raw(rd, PL1_ENABLE, mode);
- if (ret)
goto end;
- ret = rapl_read_data_raw(rd, PL1_ENABLE, true, &val);
- if (ret)
goto end;
- if (mode != val) {
pr_debug("%s cannot be %s\n", power_zone->name,
str_enabled_disabled(mode));
goto end;
- }
- if (rapl_defaults->set_floor_freq) rapl_defaults->set_floor_freq(rd, mode);
+end: cpus_read_unlock();
- return 0;
- return ret;
}
static int get_domain_enable(struct powercap_zone *power_zone, bool *mode)
This diff has no relation to commit 4f30f946f27b ("platform/x86: think-lmi: Fix sysfs group cleanup"), which the commit message claims.
It should be removed ASAP. Thanks!
Dropped, thanks!
This was supposed to be a backport of 964209202ebe ("powercap: intel_rapl: Do not change CLAMPING bit if ENABLE bit cannot be changed").