Message ID | 20241124171941.29789-1-W_Armin@gmx.de (mailing list archive) |
---|---|
State | New |
Headers | show |
Series | platform/x86: asus-wmi: Ignore return value when writing thermal policy | expand |
Hi, On 24-Nov-24 6:19 PM, Armin Wolf wrote: > On some machines like the ASUS Vivobook S14 writing the thermal policy > returns the currently writen thermal policy instead of an error code. > > Ignore the return code to avoid falsely returning an error when the > thermal policy was written successfully. > > Reported-by: auslands-kv@gmx.de > Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219517 > Fixes: 2daa86e78c49 ("platform/x86: asus_wmi: Support throttle thermal policy") > Signed-off-by: Armin Wolf <W_Armin@gmx.de> Thanks, patch looks good to me: Reviewed-by: Hans de Goede <hdegoede@redhat.com> Regards, Hans > --- > drivers/platform/x86/asus-wmi.c | 11 ++--------- > 1 file changed, 2 insertions(+), 9 deletions(-) > > diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c > index ba8b6d028f9f..8bd187e8b47f 100644 > --- a/drivers/platform/x86/asus-wmi.c > +++ b/drivers/platform/x86/asus-wmi.c > @@ -3696,7 +3696,6 @@ static int asus_wmi_custom_fan_curve_init(struct asus_wmi *asus) > /* Throttle thermal policy ****************************************************/ > static int throttle_thermal_policy_write(struct asus_wmi *asus) > { > - u32 retval; > u8 value; > int err; > > @@ -3718,8 +3717,8 @@ static int throttle_thermal_policy_write(struct asus_wmi *asus) > value = asus->throttle_thermal_policy_mode; > } > > - err = asus_wmi_set_devstate(asus->throttle_thermal_policy_dev, > - value, &retval); > + /* Some machines do not return an error code as a result, so we ignore it */ > + err = asus_wmi_set_devstate(asus->throttle_thermal_policy_dev, value, NULL); > > sysfs_notify(&asus->platform_device->dev.kobj, NULL, > "throttle_thermal_policy"); > @@ -3729,12 +3728,6 @@ static int throttle_thermal_policy_write(struct asus_wmi *asus) > return err; > } > > - if (retval != 1) { > - pr_warn("Failed to set throttle thermal policy (retval): 0x%x\n", > - retval); > - return -EIO; > - } > - > /* Must set to disabled if mode is toggled */ > if (asus->cpu_fan_curve_available) > asus->custom_fan_curves[FAN_CURVE_DEV_CPU].enabled = false; > -- > 2.39.5 >
Am 25.11.24 um 10:39 schrieb Hans de Goede: > Hi, > > On 24-Nov-24 6:19 PM, Armin Wolf wrote: >> On some machines like the ASUS Vivobook S14 writing the thermal policy >> returns the currently writen thermal policy instead of an error code. >> >> Ignore the return code to avoid falsely returning an error when the >> thermal policy was written successfully. >> >> Reported-by: auslands-kv@gmx.de >> Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219517 >> Fixes: 2daa86e78c49 ("platform/x86: asus_wmi: Support throttle thermal policy") >> Signed-off-by: Armin Wolf <W_Armin@gmx.de> > Thanks, patch looks good to me: > > Reviewed-by: Hans de Goede <hdegoede@redhat.com> > > Regards, > > Hans I forgot to add the following tag: Tested-by: auslands-kv@gmx.de Can we pick this patch for the next fixes pull? Thanks, Armin Wolf >> --- >> drivers/platform/x86/asus-wmi.c | 11 ++--------- >> 1 file changed, 2 insertions(+), 9 deletions(-) >> >> diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c >> index ba8b6d028f9f..8bd187e8b47f 100644 >> --- a/drivers/platform/x86/asus-wmi.c >> +++ b/drivers/platform/x86/asus-wmi.c >> @@ -3696,7 +3696,6 @@ static int asus_wmi_custom_fan_curve_init(struct asus_wmi *asus) >> /* Throttle thermal policy ****************************************************/ >> static int throttle_thermal_policy_write(struct asus_wmi *asus) >> { >> - u32 retval; >> u8 value; >> int err; >> >> @@ -3718,8 +3717,8 @@ static int throttle_thermal_policy_write(struct asus_wmi *asus) >> value = asus->throttle_thermal_policy_mode; >> } >> >> - err = asus_wmi_set_devstate(asus->throttle_thermal_policy_dev, >> - value, &retval); >> + /* Some machines do not return an error code as a result, so we ignore it */ >> + err = asus_wmi_set_devstate(asus->throttle_thermal_policy_dev, value, NULL); >> >> sysfs_notify(&asus->platform_device->dev.kobj, NULL, >> "throttle_thermal_policy"); >> @@ -3729,12 +3728,6 @@ static int throttle_thermal_policy_write(struct asus_wmi *asus) >> return err; >> } >> >> - if (retval != 1) { >> - pr_warn("Failed to set throttle thermal policy (retval): 0x%x\n", >> - retval); >> - return -EIO; >> - } >> - >> /* Must set to disabled if mode is toggled */ >> if (asus->cpu_fan_curve_available) >> asus->custom_fan_curves[FAN_CURVE_DEV_CPU].enabled = false; >> -- >> 2.39.5 >> >
diff --git a/drivers/platform/x86/asus-wmi.c b/drivers/platform/x86/asus-wmi.c index ba8b6d028f9f..8bd187e8b47f 100644 --- a/drivers/platform/x86/asus-wmi.c +++ b/drivers/platform/x86/asus-wmi.c @@ -3696,7 +3696,6 @@ static int asus_wmi_custom_fan_curve_init(struct asus_wmi *asus) /* Throttle thermal policy ****************************************************/ static int throttle_thermal_policy_write(struct asus_wmi *asus) { - u32 retval; u8 value; int err; @@ -3718,8 +3717,8 @@ static int throttle_thermal_policy_write(struct asus_wmi *asus) value = asus->throttle_thermal_policy_mode; } - err = asus_wmi_set_devstate(asus->throttle_thermal_policy_dev, - value, &retval); + /* Some machines do not return an error code as a result, so we ignore it */ + err = asus_wmi_set_devstate(asus->throttle_thermal_policy_dev, value, NULL); sysfs_notify(&asus->platform_device->dev.kobj, NULL, "throttle_thermal_policy"); @@ -3729,12 +3728,6 @@ static int throttle_thermal_policy_write(struct asus_wmi *asus) return err; } - if (retval != 1) { - pr_warn("Failed to set throttle thermal policy (retval): 0x%x\n", - retval); - return -EIO; - } - /* Must set to disabled if mode is toggled */ if (asus->cpu_fan_curve_available) asus->custom_fan_curves[FAN_CURVE_DEV_CPU].enabled = false;
On some machines like the ASUS Vivobook S14 writing the thermal policy returns the currently writen thermal policy instead of an error code. Ignore the return code to avoid falsely returning an error when the thermal policy was written successfully. Reported-by: auslands-kv@gmx.de Closes: https://bugzilla.kernel.org/show_bug.cgi?id=219517 Fixes: 2daa86e78c49 ("platform/x86: asus_wmi: Support throttle thermal policy") Signed-off-by: Armin Wolf <W_Armin@gmx.de> --- drivers/platform/x86/asus-wmi.c | 11 ++--------- 1 file changed, 2 insertions(+), 9 deletions(-) -- 2.39.5