2018-03-12 19:48:37

by Pavel Machek

[permalink] [raw]
Subject: linux-next on thinkpad x60: full battery is indicated as battery error in mate

Hi!

Did something change recently with battery reporting? Fully charged
battery shows as empty battery with red "x" in Mate desktop. After
reboot to recent mainline problem goes away. Tooltip says "battery
waiting to charge".

/proc/acpi/battery/BAT0/state looks ok:
present: yes
capacity state: ok
charging state: charged
present rate: 0 mW
remaining capacity: 41240 mWh
present voltage: 16495 mV

Linux amd 4.16.0-rc3-next-20180302 #30 SMP Fri Mar 2 10:28:44 CET 2018
i686 GNU/Linux
pavel@amd:~$ cat /sys/class/power_supply/BAT0/status
Not charging

Thinkpad X60.

Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html


Attachments:
(No filename) (804.00 B)
signature.asc (188.00 B)
Digital signature
Download all attachments

2018-03-12 19:51:06

by Pavel Machek

[permalink] [raw]
Subject: Re: linux-next on thinkpad x60: full battery is indicated as battery error in mate

On Mon 2018-03-12 20:47:15, Pavel Machek wrote:
> Hi!
>
> Did something change recently with battery reporting? Fully charged
> battery shows as empty battery with red "x" in Mate desktop. After
> reboot to recent mainline problem goes away. Tooltip says "battery
> waiting to charge".
>
> /proc/acpi/battery/BAT0/state looks ok:
> present: yes
> capacity state: ok
> charging state: charged
> present rate: 0 mW
> remaining capacity: 41240 mWh
> present voltage: 16495 mV
>
> Linux amd 4.16.0-rc3-next-20180302 #30 SMP Fri Mar 2 10:28:44 CET 2018
> i686 GNU/Linux
> pavel@amd:~$ cat /sys/class/power_supply/BAT0/status
> Not charging

Reboot to mainline:

pavel@amd:~$ uname -a
Linux amd 4.16.0-rc4+ #509 SMP Thu Mar 8 15:28:06 CET 2018 i686
GNU/Linux
pavel@amd:~$ cat /sys/class/power_supply/BAT0/status
Unknown

Mate shows it as "laptop battery is fully charged".

> Thinkpad X60.
>
> Pavel



--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html


Attachments:
(No filename) (1.12 kB)
signature.asc (188.00 B)
Digital signature
Download all attachments

2018-03-12 22:31:22

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: linux-next on thinkpad x60: full battery is indicated as battery error in mate

On Mon, Mar 12, 2018 at 8:49 PM, Pavel Machek <[email protected]> wrote:
> On Mon 2018-03-12 20:47:15, Pavel Machek wrote:
>> Hi!
>>
>> Did something change recently with battery reporting?

Yes, it did, and specifically for Thinkpads.

>> Fully charged
>> battery shows as empty battery with red "x" in Mate desktop. After
>> reboot to recent mainline problem goes away. Tooltip says "battery
>> waiting to charge".
>>
>> /proc/acpi/battery/BAT0/state looks ok:
>> present: yes
>> capacity state: ok
>> charging state: charged
>> present rate: 0 mW
>> remaining capacity: 41240 mWh
>> present voltage: 16495 mV
>>
>> Linux amd 4.16.0-rc3-next-20180302 #30 SMP Fri Mar 2 10:28:44 CET 2018
>> i686 GNU/Linux
>> pavel@amd:~$ cat /sys/class/power_supply/BAT0/status
>> Not charging
>
> Reboot to mainline:
>
> pavel@amd:~$ uname -a
> Linux amd 4.16.0-rc4+ #509 SMP Thu Mar 8 15:28:06 CET 2018 i686
> GNU/Linux
> pavel@amd:~$ cat /sys/class/power_supply/BAT0/status
> Unknown
>
> Mate shows it as "laptop battery is fully charged".
>
>> Thinkpad X60.

Please try to revert commits fa93854f7a7e..a20136a67a99 from
linux-next and see if that helps.

2018-03-12 22:36:46

by Ognjen Galic

[permalink] [raw]
Subject: Re: linux-next on thinkpad x60: full battery is indicated as battery error in mate

On Mon, Mar 12, 2018 at 11:29:56PM +0100, Rafael J. Wysocki wrote:
> On Mon, Mar 12, 2018 at 8:49 PM, Pavel Machek <[email protected]> wrote:
> > On Mon 2018-03-12 20:47:15, Pavel Machek wrote:
> >> Hi!
> >>
> >> Did something change recently with battery reporting?
>
> Yes, it did, and specifically for Thinkpads.


>
> >> Fully charged
> >> battery shows as empty battery with red "x" in Mate desktop. After
> >> reboot to recent mainline problem goes away. Tooltip says "battery
> >> waiting to charge".
> >>

For the MATE bug see:
https://github.com/mate-desktop/mate-power-manager/pull/251

The problem is in the new composite battery system in UPower, it
"merges" two external batteries into a single one for reporting. That
battery does not understand "Not Charging" inside the MATE Power
Manager. The above patch fixes that in MATE.

> >> /proc/acpi/battery/BAT0/state looks ok:
> >> present: yes
> >> capacity state: ok
> >> charging state: charged
> >> present rate: 0 mW
> >> remaining capacity: 41240 mWh
> >> present voltage: 16495 mV
> >>
> >> Linux amd 4.16.0-rc3-next-20180302 #30 SMP Fri Mar 2 10:28:44 CET 2018
> >> i686 GNU/Linux
> >> pavel@amd:~$ cat /sys/class/power_supply/BAT0/status
> >> Not charging
> >
> > Reboot to mainline:
> >
> > pavel@amd:~$ uname -a
> > Linux amd 4.16.0-rc4+ #509 SMP Thu Mar 8 15:28:06 CET 2018 i686
> > GNU/Linux
> > pavel@amd:~$ cat /sys/class/power_supply/BAT0/status
> > Unknown
> >
> > Mate shows it as "laptop battery is fully charged".
> >
> >> Thinkpad X60.
>
> Please try to revert commits fa93854f7a7e..a20136a67a99 from
> linux-next and see if that helps.

2018-03-12 23:05:17

by Pavel Machek

[permalink] [raw]
Subject: Re: linux-next on thinkpad x60: full battery is indicated as battery error in mate

Hi!

> > >> Fully charged
> > >> battery shows as empty battery with red "x" in Mate desktop. After
> > >> reboot to recent mainline problem goes away. Tooltip says "battery
> > >> waiting to charge".
> > >>
>
> For the MATE bug see:
> https://github.com/mate-desktop/mate-power-manager/pull/251
>
> The problem is in the new composite battery system in UPower, it
> "merges" two external batteries into a single one for reporting. That
> battery does not understand "Not Charging" inside the MATE Power
> Manager. The above patch fixes that in MATE.

Ok, so problem is 91eea70e5e5ce12eb1c7cd922e561fab43e201bd.

And now, I see that MATE should be improved.

But what I also see is that kernel is changing its interface in a way
that (while making sense) breaks existing application. And we don't
break existing applications.

[Now... maybe if the fix for the application is available for long
long time and noone is really looking and everyone already has new
application version, maybe ... But pull request for MATE is 9 days
old, and not even merged. So there is no way this is suitable for
4.17.]

Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html


Attachments:
(No filename) (1.26 kB)
signature.asc (188.00 B)
Digital signature
Download all attachments

2018-03-12 23:09:52

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: linux-next on thinkpad x60: full battery is indicated as battery error in mate

On Tue, Mar 13, 2018 at 12:04 AM, Pavel Machek <[email protected]> wrote:
> Hi!
>
>> > >> Fully charged
>> > >> battery shows as empty battery with red "x" in Mate desktop. After
>> > >> reboot to recent mainline problem goes away. Tooltip says "battery
>> > >> waiting to charge".
>> > >>
>>
>> For the MATE bug see:
>> https://github.com/mate-desktop/mate-power-manager/pull/251
>>
>> The problem is in the new composite battery system in UPower, it
>> "merges" two external batteries into a single one for reporting. That
>> battery does not understand "Not Charging" inside the MATE Power
>> Manager. The above patch fixes that in MATE.
>
> Ok, so problem is 91eea70e5e5ce12eb1c7cd922e561fab43e201bd.
>
> And now, I see that MATE should be improved.
>
> But what I also see is that kernel is changing its interface in a way
> that (while making sense) breaks existing application. And we don't
> break existing applications.
>
> [Now... maybe if the fix for the application is available for long
> long time and noone is really looking and everyone already has new
> application version, maybe ... But pull request for MATE is 9 days
> old, and not even merged. So there is no way this is suitable for
> 4.17.]

Right.

This basically means that we will have to defer the battery changes
until user space is ready and not just upstream, but also in distro
packages.

2018-03-12 23:20:06

by Pavel Machek

[permalink] [raw]
Subject: Re: linux-next on thinkpad x60: full battery is indicated as battery error in mate

Hi!

> >> > >> Fully charged
> >> > >> battery shows as empty battery with red "x" in Mate desktop. After
> >> > >> reboot to recent mainline problem goes away. Tooltip says "battery
> >> > >> waiting to charge".
> >> > >>
> >>
> >> For the MATE bug see:
> >> https://github.com/mate-desktop/mate-power-manager/pull/251
> >>
> >> The problem is in the new composite battery system in UPower, it
> >> "merges" two external batteries into a single one for reporting. That
> >> battery does not understand "Not Charging" inside the MATE Power
> >> Manager. The above patch fixes that in MATE.
> >
> > Ok, so problem is 91eea70e5e5ce12eb1c7cd922e561fab43e201bd.
> >
> > And now, I see that MATE should be improved.
> >
> > But what I also see is that kernel is changing its interface in a way
> > that (while making sense) breaks existing application. And we don't
> > break existing applications.
> >
> > [Now... maybe if the fix for the application is available for long
> > long time and noone is really looking and everyone already has new
> > application version, maybe ... But pull request for MATE is 9 days
> > old, and not even merged. So there is no way this is suitable for
> > 4.17.]
>
> Right.
>
> This basically means that we will have to defer the battery changes
> until user space is ready and not just upstream, but also in distro
> packages.

Yes please.

Note that only 91eea70e5e5ce12eb1c7cd922e561fab43e201bd should break
anything, the others should be safe AFAICT?

Pavel

--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html


Attachments:
(No filename) (1.64 kB)
signature.asc (188.00 B)
Digital signature
Download all attachments

2018-03-12 23:40:21

by Ognjen Galic

[permalink] [raw]
Subject: Re: linux-next on thinkpad x60: full battery is indicated as battery error in mate

On Tue, Mar 13, 2018 at 12:18:47AM +0100, Pavel Machek wrote:
> Hi!
>
> > >> > >> Fully charged
> > >> > >> battery shows as empty battery with red "x" in Mate desktop. After
> > >> > >> reboot to recent mainline problem goes away. Tooltip says "battery
> > >> > >> waiting to charge".
> > >> > >>
> > >>
> > >> For the MATE bug see:
> > >> https://github.com/mate-desktop/mate-power-manager/pull/251
> > >>
> > >> The problem is in the new composite battery system in UPower, it
> > >> "merges" two external batteries into a single one for reporting. That
> > >> battery does not understand "Not Charging" inside the MATE Power
> > >> Manager. The above patch fixes that in MATE.
> > >
> > > Ok, so problem is 91eea70e5e5ce12eb1c7cd922e561fab43e201bd.
> > >
> > > And now, I see that MATE should be improved.
> > >
> > > But what I also see is that kernel is changing its interface in a way
> > > that (while making sense) breaks existing application. And we don't
> > > break existing applications.
> > >
> > > [Now... maybe if the fix for the application is available for long
> > > long time and noone is really looking and everyone already has new
> > > application version, maybe ... But pull request for MATE is 9 days
> > > old, and not even merged. So there is no way this is suitable for
> > > 4.17.]

It's not a bug in the kernel, it's a very subtle cosmetic bug in MATE.
If you can, please test that MATE patch and report back to Github
if it works, as I wrote that patch and they are waiting for someone with
a ThinkPad to test the patch. If it works, it will get merged and
everyone will be happy.

This is far from "breaking applications", it's just a cosmetic bug with
a single icon in a single application that has a simple fix.

The upstream underlying UPower system reports it properly, as
UP_DEVICE_STATE_PENDING_CHARGE, it's just that the MATE/GNOME developers did
not handle that scenario due to poor testing and use case analysis, even
when that state is in the UpDeviceState enumeration.

See:
https://upower.freedesktop.org/docs/UPower-up-types.html#UpDeviceState

UPower correctly returns UP_DEVICE_STATE_PENDING_CHARGE, its just that
the MATE Power Manager discards that and assumes
UP_DEVICE_STATE_UNKNOWN.

> >
> > Right.
> >
> > This basically means that we will have to defer the battery changes
> > until user space is ready and not just upstream, but also in distro
> > packages.
>
> Yes please.

No. See below.

>
> Note that only 91eea70e5e5ce12eb1c7cd922e561fab43e201bd should break
> anything, the others should be safe AFAICT?

Again, nothing is broken here, the kernel is *currently* broken as it
shows that the battery state is "Unknown" and MATE assumes a broken
kernel and returns a simple charging icon.

>
> Pavel
>
> --
> (english) http://www.livejournal.com/~pavelmachek
> (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html



2018-03-13 00:52:29

by Ognjen Galic

[permalink] [raw]
Subject: Re: linux-next on thinkpad x60: full battery is indicated as battery error in mate

On Tue, Mar 13, 2018 at 12:18:47AM +0100, Pavel Machek wrote:
> Hi!
>
> > >> > >> Fully charged
> > >> > >> battery shows as empty battery with red "x" in Mate desktop. After
> > >> > >> reboot to recent mainline problem goes away. Tooltip says "battery
> > >> > >> waiting to charge".
> > >> > >>
> > >>
> > >> For the MATE bug see:
> > >> https://github.com/mate-desktop/mate-power-manager/pull/251
> > >>
> > >> The problem is in the new composite battery system in UPower, it
> > >> "merges" two external batteries into a single one for reporting. That
> > >> battery does not understand "Not Charging" inside the MATE Power
> > >> Manager. The above patch fixes that in MATE.
> > >
> > > Ok, so problem is 91eea70e5e5ce12eb1c7cd922e561fab43e201bd.
> > >
> > > And now, I see that MATE should be improved.
> > >
> > > But what I also see is that kernel is changing its interface in a way
> > > that (while making sense) breaks existing application. And we don't
> > > break existing applications.
> > >
> > > [Now... maybe if the fix for the application is available for long
> > > long time and noone is really looking and everyone already has new
> > > application version, maybe ... But pull request for MATE is 9 days
> > > old, and not even merged. So there is no way this is suitable for
> > > 4.17.]
> >
> > Right.
> >
> > This basically means that we will have to defer the battery changes
> > until user space is ready and not just upstream, but also in distro
> > packages.
>
> Yes please.
>
> Note that only 91eea70e5e5ce12eb1c7cd922e561fab43e201bd should break
> anything, the others should be safe AFAICT?
>
> Pavel
>

Actually there is a bug in UPower itself, and that reflects the status
icon being broken in almost all desktop environments. I will work on
fixing UPower in the following days. Disregard my previous comment.

> --
> (english) http://www.livejournal.com/~pavelmachek
> (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html



2018-03-13 09:16:17

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: linux-next on thinkpad x60: full battery is indicated as battery error in mate

On Tue, Mar 13, 2018 at 1:51 AM, Ognjen Galić <[email protected]> wrote:
> On Tue, Mar 13, 2018 at 12:18:47AM +0100, Pavel Machek wrote:
>> Hi!
>>
>> > >> > >> Fully charged
>> > >> > >> battery shows as empty battery with red "x" in Mate desktop. After
>> > >> > >> reboot to recent mainline problem goes away. Tooltip says "battery
>> > >> > >> waiting to charge".
>> > >> > >>
>> > >>
>> > >> For the MATE bug see:
>> > >> https://github.com/mate-desktop/mate-power-manager/pull/251
>> > >>
>> > >> The problem is in the new composite battery system in UPower, it
>> > >> "merges" two external batteries into a single one for reporting. That
>> > >> battery does not understand "Not Charging" inside the MATE Power
>> > >> Manager. The above patch fixes that in MATE.
>> > >
>> > > Ok, so problem is 91eea70e5e5ce12eb1c7cd922e561fab43e201bd.
>> > >
>> > > And now, I see that MATE should be improved.
>> > >
>> > > But what I also see is that kernel is changing its interface in a way
>> > > that (while making sense) breaks existing application. And we don't
>> > > break existing applications.
>> > >
>> > > [Now... maybe if the fix for the application is available for long
>> > > long time and noone is really looking and everyone already has new
>> > > application version, maybe ... But pull request for MATE is 9 days
>> > > old, and not even merged. So there is no way this is suitable for
>> > > 4.17.]
>> >
>> > Right.
>> >
>> > This basically means that we will have to defer the battery changes
>> > until user space is ready and not just upstream, but also in distro
>> > packages.
>>
>> Yes please.
>>
>> Note that only 91eea70e5e5ce12eb1c7cd922e561fab43e201bd should break
>> anything, the others should be safe AFAICT?
>>
>> Pavel
>>
>
> Actually there is a bug in UPower itself, and that reflects the status
> icon being broken in almost all desktop environments. I will work on
> fixing UPower in the following days. Disregard my previous comment.

I have reverted commit 91eea70e5e5ce12e for the time being.

Of course, it can be applied again after all of the bus triggered by
it have been fixed and the fixes have gone to users.

2018-03-13 09:17:22

by Rafael J. Wysocki

[permalink] [raw]
Subject: Re: linux-next on thinkpad x60: full battery is indicated as battery error in mate

On Tue, Mar 13, 2018 at 10:14 AM, Rafael J. Wysocki <[email protected]> wrote:
> On Tue, Mar 13, 2018 at 1:51 AM, Ognjen Galić <[email protected]> wrote:
>> On Tue, Mar 13, 2018 at 12:18:47AM +0100, Pavel Machek wrote:
>>> Hi!
>>>
>>> > >> > >> Fully charged
>>> > >> > >> battery shows as empty battery with red "x" in Mate desktop. After
>>> > >> > >> reboot to recent mainline problem goes away. Tooltip says "battery
>>> > >> > >> waiting to charge".
>>> > >> > >>
>>> > >>
>>> > >> For the MATE bug see:
>>> > >> https://github.com/mate-desktop/mate-power-manager/pull/251
>>> > >>
>>> > >> The problem is in the new composite battery system in UPower, it
>>> > >> "merges" two external batteries into a single one for reporting. That
>>> > >> battery does not understand "Not Charging" inside the MATE Power
>>> > >> Manager. The above patch fixes that in MATE.
>>> > >
>>> > > Ok, so problem is 91eea70e5e5ce12eb1c7cd922e561fab43e201bd.
>>> > >
>>> > > And now, I see that MATE should be improved.
>>> > >
>>> > > But what I also see is that kernel is changing its interface in a way
>>> > > that (while making sense) breaks existing application. And we don't
>>> > > break existing applications.
>>> > >
>>> > > [Now... maybe if the fix for the application is available for long
>>> > > long time and noone is really looking and everyone already has new
>>> > > application version, maybe ... But pull request for MATE is 9 days
>>> > > old, and not even merged. So there is no way this is suitable for
>>> > > 4.17.]
>>> >
>>> > Right.
>>> >
>>> > This basically means that we will have to defer the battery changes
>>> > until user space is ready and not just upstream, but also in distro
>>> > packages.
>>>
>>> Yes please.
>>>
>>> Note that only 91eea70e5e5ce12eb1c7cd922e561fab43e201bd should break
>>> anything, the others should be safe AFAICT?
>>>
>>> Pavel
>>>
>>
>> Actually there is a bug in UPower itself, and that reflects the status
>> icon being broken in almost all desktop environments. I will work on
>> fixing UPower in the following days. Disregard my previous comment.
>
> I have reverted commit 91eea70e5e5ce12e for the time being.
>
> Of course, it can be applied again after all of the bus triggered by
> it have been fixed and the fixes have gone to users.

s/bus/bugs/ (obviously)