Re: [PATCH v4 1/1] asus-wmi: Add support for custom fan curves

From: Luke Jones
Date: Fri Aug 20 2021 - 17:30:26 EST




On Fri, Aug 20 2021 at 13:39:02 +0200, Bastien Nocera <hadess@xxxxxxxxxx> wrote:
On Fri, 2021-08-20 at 23:00 +1200, Luke Jones wrote:


On Fri, Aug 20 2021 at 12:51:08 +0200, Bastien Nocera
<hadess@xxxxxxxxxx> wrote:
> On Fri, 2021-08-20 at 12:43 +0200, Bastien Nocera wrote:
> > On Fri, 2021-08-20 at 22:33 +1200, Luke Jones wrote:
> > > > Am I going to get bug reports from Asus users that will
> > complain
> > > > that
> > > > power-profiles-daemon doesn't work correctly, where I will
> > have
> > > > to
> > > > wearily ask if they're using an Asus Rog laptop?
> > >
> > > No. Definitely not. The changes to fan curves per-profile need
> > to
> > > be
> > > explicitly enabled and set. So a new user will be unaware that
> > this
> > > control exists (until they look for it) and their laptop will
> > > behave
> > > exactly as default.
> >
> > "The user will need to change the fan curves manually so will
> > definitely remember to mention it in bug reports" is a very
> > different
> > thing to "the user can't change the fan curves to be nonsensical
> > and
> > mean opposite things".
> >
> > I can assure you that I will eventually get bug reports from
> > "power
> > users" who break their setup and wonder why things don't work
> > properly,
> > without ever mentioning the changes they made changes to the fan
> > curves, or anything else they might have changed.
>
> A way to taint the settings that power-profiles-daemon could catch
> would be fine by me. I absolutely don't want to have to support
> somebody's tweaks until they undo them.

Definitely understood. Do you have something in mind?

A sysfs attribute with boolean data that shows whether custom fan
curves are used would be enough.

The path /sys/devices/platform/asus-nb-wmi/active_fan_curve_profiles should be usable like this? I added this as the method for controlling which fan curves for which profiles are active.

If empty, then no custom fan curves are active at all. If it contains any combination of strings "quiet, balanced, performance" then those associated (named) platform_profiles have an active fan curve and you can throw up a general warning, maybe add the contents of that file too?


I could then check whether that file exists on startup, and throw a
warning if custom curves are used, or become used, so that it shows up
in power-profiles-daemon's logs.