All of lore.kernel.org
 help / color / mirror / Atom feed
From: "Bjørn Mork" <bjorn@mork.no>
To: Hans de Goede <hdegoede@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org,
	"Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
Subject: Re: [BISECTED 3.16-rc REGREGRESSION] backlight control stopped working
Date: Mon, 14 Jul 2014 15:27:50 +0200	[thread overview]
Message-ID: <87egxoysrt.fsf@nemi.mork.no> (raw)
In-Reply-To: <53C3D7C3.7090505@redhat.com> (Hans de Goede's message of "Mon, 14 Jul 2014 15:14:43 +0200")

Hans de Goede <hdegoede@redhat.com> writes:

> Hi,
>
> On 07/14/2014 02:59 PM, Bjørn Mork wrote:
>> Yes, I actually bisected this just to get
>> 
>> 886129a8eebebec260165741fe31421482371006 is the first bad commit
>> commit 886129a8eebebec260165741fe31421482371006
>> Author: Hans de Goede <hdegoede@redhat.com>
>> Date:   Tue May 6 14:46:23 2014 +0200
>> 
>>     ACPI / video: change acpi-video brightness_switch_enabled default to 0
>>     
>>     acpi-video is unique in that it not only generates brightness up/down
>>     keypresses, but also (sometimes) actively changes the brightness itself.
>>     
>>     This presents an inconsistent kernel interface to userspace, basically there
>>     are 2 different scenarios, depending on the laptop model:
>>     
>>      1) On some laptops a brightness up/down keypress means: show a brightness osd
>>      with the current brightness, iow it is a brightness has changed notification.
>>     
>>      2) Where as on (a lot of) other laptops it means a brightness up/down key was
>>      pressed, deal with it.
>>     
>>     Most of the desktop environments interpret any press as in scenario 2, and
>>     change the brightness up / down as a response to the key events, causing it
>>     to be changed twice, once by acpi-video and once by the DE.
>>     
>>     With the new default for video.use_native_backlight we will be moving even
>>     more laptops over to behaving as in scenario 2. Making the remaining laptops
>>     even more of a weird exception. Also note that it is hard to detect scenario
>>     1 properly in userspace, and AFAIK none of the DE-s deals with it.
>>     
>>     Therefor this commit changes the default of brightness_switch_enabled to 0
>>     making its behavior consistent with all the other backlight drivers.
>>     
>>     Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>>     Reviewed-by: Aaron Lu <aaron.lu@intel.com>
>>     Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>> 
>> :040000 040000 5bbac8c4f3e9fd5421daf84289004c32c3217f2a 82c99a358bda6360f845b6063182d3e707ff90f0 M      Documentation
>> :040000 040000 81ed56a41130bbbea980620114ff11e3bb23ee63 a9870ba1d046bde69796060304c78dfbb1d00a1f M      drivers
>> 
>> 
>> 
>> The fact that this seems to be an *intentional* breakage does not help a
>> lot.  Yes, I understand that you believe the choice of default was
>> incorrect for some reason.  You might even be right about that.  But
>> that is still not a valid reason to break existing configurations for
>> end users!  Please do not do that.
>
> This *not* a regression, it is an intended behavior change

On my laptop it changed the behaviour from working to non-working, which
is a regression whether it was intended or not.

> which can be
> flipped back to its old behavior with a single cmdline argument (add
> video.brightness_switch_enabled=1 to the kernel commandline).

Yes, sure.

But we do not require users to add command line settings to keep
existing behaviour.

For the record, AFAICS, you could achive *your* wanted effect by adding
video.brightness_switch_enabled=0 to the kernel commandline.

> Yes this may break existing configurations for some users, most likely
> users running some custom setup, who thus should be able to fix things
> by adding one more customization to there setup.


You can drop the "may".  I have already told you that it broke my
configuration, haven't I?

> OTOH this will also unbreak a lot of existing setups, likely an amount
> of setups which is at least one order of magnitude bigger then the
> amount it will break.

If so, then would adding video.brightness_switch_enabled=0 to the kernel
commandline on those systems.  Which would have the nice effect that it
wouldn't break anything.

But whavever.  Since when was it OK to intentionally break existing
setups for *any* reason?

> Most users will be running a desktop environment which will react
> to the keypresses (which are always generated in cases where
> brightness_switch_enabled does anything) by changing the brightness
> a second time. This happens at least in gnome, kde, xfce, unity and
> probably in a few smaller desktop environments as configured ootb too.

Now I believe we are moving out on the prairie here.  I am concerned
about the *kernel*, not desktop environments.


> If you've a backlight control which only has 8 steps taking 2 steps
> at a time is a bug issue, see e.g. :
>
> https://bugs.launchpad.net/gnome-settings-daemon/+bug/527157
> http://askubuntu.com/questions/173921/why-does-my-thinkpad-brightness-control-skip-steps
>
> TL;DR: This change really is for the better and is here to stay.
>
>> Note that NO USER cares about "some laptops" or "other laptops".  They
>> care about their own systems, which either
>>  a) depend on the old default and therefore breaks with your change, or
>>  b) have a user modified setting and therefore are unaffected by your
>>     change
>
> This is not how it works, sometimes we *must* look at the bigger picture,
> e.g. when the Linux kernel first started advertising to acpi that it
> was "Windows 2012" (aka win8), this causes some breakage, still we went
> ahead with the change, because in the end we must advertise "Windows 2012"
> support to be able to get support for certain features from the firmware.

Please explain the bigger picture then.  From what I can see, you have
not made a single attempt on explaining why the broken systems cannot be
fixed be fixed by adding video.brightness_switch_enabled=0 to the kernel
commandline.





Bjørn
--
To unsubscribe from this list: send the line "unsubscribe linux-acpi" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

WARNING: multiple messages have this Message-ID (diff)
From: "Bjørn Mork" <bjorn@mork.no>
To: Hans de Goede <hdegoede@redhat.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>,
	linux-kernel@vger.kernel.org, linux-acpi@vger.kernel.org,
	"Rafael J. Wysocki" <rafael.j.wysocki@intel.com>
Subject: Re: [BISECTED 3.16-rc REGREGRESSION] backlight control stopped working
Date: Mon, 14 Jul 2014 15:27:50 +0200	[thread overview]
Message-ID: <87egxoysrt.fsf@nemi.mork.no> (raw)
In-Reply-To: <53C3D7C3.7090505@redhat.com> (Hans de Goede's message of "Mon, 14 Jul 2014 15:14:43 +0200")

Hans de Goede <hdegoede@redhat.com> writes:

> Hi,
>
> On 07/14/2014 02:59 PM, Bjørn Mork wrote:
>> Yes, I actually bisected this just to get
>> 
>> 886129a8eebebec260165741fe31421482371006 is the first bad commit
>> commit 886129a8eebebec260165741fe31421482371006
>> Author: Hans de Goede <hdegoede@redhat.com>
>> Date:   Tue May 6 14:46:23 2014 +0200
>> 
>>     ACPI / video: change acpi-video brightness_switch_enabled default to 0
>>     
>>     acpi-video is unique in that it not only generates brightness up/down
>>     keypresses, but also (sometimes) actively changes the brightness itself.
>>     
>>     This presents an inconsistent kernel interface to userspace, basically there
>>     are 2 different scenarios, depending on the laptop model:
>>     
>>      1) On some laptops a brightness up/down keypress means: show a brightness osd
>>      with the current brightness, iow it is a brightness has changed notification.
>>     
>>      2) Where as on (a lot of) other laptops it means a brightness up/down key was
>>      pressed, deal with it.
>>     
>>     Most of the desktop environments interpret any press as in scenario 2, and
>>     change the brightness up / down as a response to the key events, causing it
>>     to be changed twice, once by acpi-video and once by the DE.
>>     
>>     With the new default for video.use_native_backlight we will be moving even
>>     more laptops over to behaving as in scenario 2. Making the remaining laptops
>>     even more of a weird exception. Also note that it is hard to detect scenario
>>     1 properly in userspace, and AFAIK none of the DE-s deals with it.
>>     
>>     Therefor this commit changes the default of brightness_switch_enabled to 0
>>     making its behavior consistent with all the other backlight drivers.
>>     
>>     Signed-off-by: Hans de Goede <hdegoede@redhat.com>
>>     Reviewed-by: Aaron Lu <aaron.lu@intel.com>
>>     Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
>> 
>> :040000 040000 5bbac8c4f3e9fd5421daf84289004c32c3217f2a 82c99a358bda6360f845b6063182d3e707ff90f0 M      Documentation
>> :040000 040000 81ed56a41130bbbea980620114ff11e3bb23ee63 a9870ba1d046bde69796060304c78dfbb1d00a1f M      drivers
>> 
>> 
>> 
>> The fact that this seems to be an *intentional* breakage does not help a
>> lot.  Yes, I understand that you believe the choice of default was
>> incorrect for some reason.  You might even be right about that.  But
>> that is still not a valid reason to break existing configurations for
>> end users!  Please do not do that.
>
> This *not* a regression, it is an intended behavior change

On my laptop it changed the behaviour from working to non-working, which
is a regression whether it was intended or not.

> which can be
> flipped back to its old behavior with a single cmdline argument (add
> video.brightness_switch_enabled=1 to the kernel commandline).

Yes, sure.

But we do not require users to add command line settings to keep
existing behaviour.

For the record, AFAICS, you could achive *your* wanted effect by adding
video.brightness_switch_enabled=0 to the kernel commandline.

> Yes this may break existing configurations for some users, most likely
> users running some custom setup, who thus should be able to fix things
> by adding one more customization to there setup.


You can drop the "may".  I have already told you that it broke my
configuration, haven't I?

> OTOH this will also unbreak a lot of existing setups, likely an amount
> of setups which is at least one order of magnitude bigger then the
> amount it will break.

If so, then would adding video.brightness_switch_enabled=0 to the kernel
commandline on those systems.  Which would have the nice effect that it
wouldn't break anything.

But whavever.  Since when was it OK to intentionally break existing
setups for *any* reason?

> Most users will be running a desktop environment which will react
> to the keypresses (which are always generated in cases where
> brightness_switch_enabled does anything) by changing the brightness
> a second time. This happens at least in gnome, kde, xfce, unity and
> probably in a few smaller desktop environments as configured ootb too.

Now I believe we are moving out on the prairie here.  I am concerned
about the *kernel*, not desktop environments.


> If you've a backlight control which only has 8 steps taking 2 steps
> at a time is a bug issue, see e.g. :
>
> https://bugs.launchpad.net/gnome-settings-daemon/+bug/527157
> http://askubuntu.com/questions/173921/why-does-my-thinkpad-brightness-control-skip-steps
>
> TL;DR: This change really is for the better and is here to stay.
>
>> Note that NO USER cares about "some laptops" or "other laptops".  They
>> care about their own systems, which either
>>  a) depend on the old default and therefore breaks with your change, or
>>  b) have a user modified setting and therefore are unaffected by your
>>     change
>
> This is not how it works, sometimes we *must* look at the bigger picture,
> e.g. when the Linux kernel first started advertising to acpi that it
> was "Windows 2012" (aka win8), this causes some breakage, still we went
> ahead with the change, because in the end we must advertise "Windows 2012"
> support to be able to get support for certain features from the firmware.

Please explain the bigger picture then.  From what I can see, you have
not made a single attempt on explaining why the broken systems cannot be
fixed be fixed by adding video.brightness_switch_enabled=0 to the kernel
commandline.





Bjørn

  reply	other threads:[~2014-07-14 13:29 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-14 12:59 [BISECTED 3.16-rc REGREGRESSION] backlight control stopped working Bjørn Mork
2014-07-14 12:59 ` Bjørn Mork
2014-07-14 13:14 ` Hans de Goede
2014-07-14 13:14   ` Hans de Goede
2014-07-14 13:27   ` Bjørn Mork [this message]
2014-07-14 13:27     ` Bjørn Mork
2014-07-14 16:24   ` Linus Torvalds
2014-07-14 16:24     ` Linus Torvalds
2014-07-14 16:59     ` Linus Torvalds
2014-07-14 20:45       ` Bjørn Mork
2014-07-14 20:45         ` Bjørn Mork
2014-07-14 20:49         ` Linus Torvalds
2014-07-14 20:49           ` Linus Torvalds
2014-07-14 21:46           ` Bjørn Mork
2014-07-14 21:46             ` Bjørn Mork
2014-07-14 22:19             ` Linus Torvalds
2014-07-14 18:01     ` Rafael J. Wysocki
2014-07-14 18:01       ` Rafael J. Wysocki
2014-07-15  7:00     ` Hans de Goede
2014-07-15  7:00       ` Hans de Goede
2014-07-15  7:33       ` Bjørn Mork
2014-07-15  7:33         ` Bjørn Mork
2014-07-15 10:59       ` Hans de Goede
2014-07-15 10:59         ` Hans de Goede

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87egxoysrt.fsf@nemi.mork.no \
    --to=bjorn@mork.no \
    --cc=hdegoede@redhat.com \
    --cc=linux-acpi@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=rafael.j.wysocki@intel.com \
    --cc=torvalds@linux-foundation.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.