lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e8789ef0-1700-4f1b-95fe-95dfdbc1e785@kernel.org>
Date: Sun, 26 Oct 2025 12:52:29 -0500
From: Mario Limonciello <superm1@...nel.org>
To: "Derek J. Clark" <derekjohn.clark@...il.com>,
 Hans de Goede <hdegoede@...hat.com>,
 Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>,
 Armin Wolf <W_Armin@....de>, Len Brown <lenb@...nel.org>,
 "Rafael J . Wysocki" <rafael@...nel.org>, Jonathan Corbet <corbet@....net>
Cc: Zhixin Zhang <zhangzx36@...ovo.com>, Mia Shao <shaohz1@...ovo.com>,
 Mark Pearson <mpearson-lenovo@...ebb.ca>,
 "Pierre-Loup A . Griffais" <pgriffais@...vesoftware.com>,
 Kurt Borja <kuurtb@...il.com>, platform-driver-x86@...r.kernel.org,
 linux-doc@...r.kernel.org, linux-kernel@...r.kernel.org,
 linux-acpi@...r.kernel.org
Subject: Re: [PATCH 2/3] platform/x86: lenovo-wmi-gamezone Use Extreme vice
 balanced-performance

Is 'vice' the right word for the subject?

On 10/26/25 3:12 AM, Derek J. Clark wrote:
> When upstreaming the gamezone WMI drivers the "extreme" mode was matched
> to performance and performance was matched to balanced-performance, but
> only when extreme mode was fully enabled. Otherwise performance was
> matched to performance. This has led to quite a bit of confusion with
> users not understanding why the LED color indicating the platform
> profile doesn't match their expectations. To solve this, replace the
> confusing convention with the new "extreme" profile.

Are the colors common to all devices?  Maybe it would be worth adding to 
the documentation the expected colors for each mode.

> 
> Signed-off-by: Derek J. Clark <derekjohn.clark@...il.com>
> ---
>   .../wmi/devices/lenovo-wmi-gamezone.rst        | 10 +++-------
>   drivers/platform/x86/lenovo/wmi-gamezone.c     | 18 +++++-------------
>   2 files changed, 8 insertions(+), 20 deletions(-)
> 
> diff --git a/Documentation/wmi/devices/lenovo-wmi-gamezone.rst b/Documentation/wmi/devices/lenovo-wmi-gamezone.rst
> index 997263e51a7d..6c908f44a08e 100644
> --- a/Documentation/wmi/devices/lenovo-wmi-gamezone.rst
> +++ b/Documentation/wmi/devices/lenovo-wmi-gamezone.rst
> @@ -24,18 +24,14 @@ current platform profile when it changes.
>   The following platform profiles are supported:
>    - low-power
>    - balanced
> - - balanced-performance
>    - performance
> + - extreme
>    - custom
>   
> -Balanced-Performance
> +Extreme
>   ~~~~~~~~~~~~~~~~~~~~
>   Some newer Lenovo "Gaming Series" laptops have an "Extreme Mode" profile
> -enabled in their BIOS. For these devices, the performance platform profile
> -corresponds to the BIOS Extreme Mode, while the balanced-performance
> -platform profile corresponds to the BIOS Performance mode. For legacy
> -devices, the performance platform profile will correspond with the BIOS
> -Performance mode.
> +enabled in their BIOS.
>   
>   For some newer devices the "Extreme Mode" profile is incomplete in the BIOS
>   and setting it will cause undefined behavior. A BIOS bug quirk table is
> diff --git a/drivers/platform/x86/lenovo/wmi-gamezone.c b/drivers/platform/x86/lenovo/wmi-gamezone.c
> index 0eb7fe8222f4..faabbd4657bd 100644
> --- a/drivers/platform/x86/lenovo/wmi-gamezone.c
> +++ b/drivers/platform/x86/lenovo/wmi-gamezone.c
> @@ -171,14 +171,10 @@ static int lwmi_gz_profile_get(struct device *dev,
>   		*profile = PLATFORM_PROFILE_BALANCED;
>   		break;
>   	case LWMI_GZ_THERMAL_MODE_PERFORMANCE:
> -		if (priv->extreme_supported) {
> -			*profile = PLATFORM_PROFILE_BALANCED_PERFORMANCE;
> -			break;
> -		}
>   		*profile = PLATFORM_PROFILE_PERFORMANCE;
>   		break;
>   	case LWMI_GZ_THERMAL_MODE_EXTREME:
> -		*profile = PLATFORM_PROFILE_PERFORMANCE;
> +		*profile = PLATFORM_PROFILE_EXTREME;
>   		break;
>   	case LWMI_GZ_THERMAL_MODE_CUSTOM:
>   		*profile = PLATFORM_PROFILE_CUSTOM;
> @@ -218,16 +214,12 @@ static int lwmi_gz_profile_set(struct device *dev,
>   	case PLATFORM_PROFILE_BALANCED:
>   		mode = LWMI_GZ_THERMAL_MODE_BALANCED;
>   		break;
> -	case PLATFORM_PROFILE_BALANCED_PERFORMANCE:
> -		mode = LWMI_GZ_THERMAL_MODE_PERFORMANCE;
> -		break;
>   	case PLATFORM_PROFILE_PERFORMANCE:
> -		if (priv->extreme_supported) {
> -			mode = LWMI_GZ_THERMAL_MODE_EXTREME;
> -			break;
> -		}
>   		mode = LWMI_GZ_THERMAL_MODE_PERFORMANCE;
>   		break;
> +	case PLATFORM_PROFILE_EXTREME:
> +		mode = LWMI_GZ_THERMAL_MODE_EXTREME;
> +		break;
>   	case PLATFORM_PROFILE_CUSTOM:
>   		mode = LWMI_GZ_THERMAL_MODE_CUSTOM;
>   		break;
> @@ -338,7 +330,7 @@ static int lwmi_gz_platform_profile_probe(void *drvdata, unsigned long *choices)
>   
>   	priv->extreme_supported = lwmi_gz_extreme_supported(profile_support_ver);
>   	if (priv->extreme_supported)
> -		set_bit(PLATFORM_PROFILE_BALANCED_PERFORMANCE, choices);
> +		set_bit(PLATFORM_PROFILE_EXTREME, choices);
>   
>   	return 0;
>   }


Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ