Bug 1060579 - F20 upower shows extremely high value for energy-full causing battery indicator to show low battery icon inappropriately, time to charge value inaccurate and system sometimes hibernates
Summary: F20 upower shows extremely high value for energy-full causing battery indicat...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: Fedora
Classification: Fedora
Component: upower
Version: 20
Hardware: x86_64
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Richard Hughes
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 1048383 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2014-02-02 20:41 UTC by Matt Keith
Modified: 2015-01-06 11:11 UTC (History)
4 users (show)

Fixed In Version:
Clone Of: 1048383
Environment:
Last Closed: 2015-01-06 11:11:01 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)

Description Matt Keith 2014-02-02 20:41:46 UTC
+++ This bug was initially created as a clone of Bug #1048383 +++

Description of problem:
In Fedora 20 the battery indicator shows a low battery icon while using the battery with a 90% or lower charge level (Similar to bug 995608 for F19).  Also time-to-charge values are very inaccurate once connected to power and charging (Similar to bug 1033969 for F19)

Version-Release number of selected component (if applicable):
upower-0.9.23-2.fc20.x86_64

How reproducible:
Issues occur any time the battery gets down to 90% or lower, or when charging battery back up.

Steps to Reproduce:
1. Disconnect AC from battery power
2. Use computer to get battery level down to at least 90%
3. Observe battery indicator icon is showing low battery warning while the power options panel and upower --dump display correct battery level
4. Connect power and observe time to charge indicator is quite inaccurate (perhaps based on inaccurate "energy-full" value reported by upower.)

Actual results:
-Battery indicator icon shows a critical low battery warning while on battery with 90% or less charge
-Time to charge indicator in power-level is inaccurate while charging back up

Expected results:
-The battery indicator icon should not display a critically low battery warning until the battery is appropriately low.
-When charging the time-to-charge indicator i the power options panel shows an inaccurate value.

Additional info:
-upower --dump displays correct value for battery percentage.
-upower --dump shows energy-full-level to be nearly 10x times higher than energy-full-design which may be contributing (similar to bug 1033969)
-my hardware is a macbookpro10,2 (early 2013 13" retina macbook pro)

--- Additional comment from Matt Keith on 2014-01-03 16:11:22 EST ---



--- Additional comment from Matt Keith on 2014-01-03 16:16:35 EST ---



--- Additional comment from Matt Keith on 2014-01-03 16:17:50 EST ---



--- Additional comment from Matt Keith on 2014-01-03 22:39:03 EST ---

A number of system updates were received this evening (including an update to kernel 3.12.6-300 from 3.12.5.302) which appear to have resolved my problem.  The battery icon is showing an appropriate level, upower --dump is showing the correct value for energy-full-level, and when charging the system reports the correct amount of time to charge.

--- Additional comment from Matt Keith on 2014-01-04 02:32:17 EST ---

Problem returns intermittently.  At one point after disconnecting the AC supply, my machine hibernated with 90% battery remaining.  It seems a reboot corrects the issue for some time when the energy-full-level value in upower --dump begins again showing an invalid amount.

--- Additional comment from Matt Keith on 2014-01-05 00:14:16 EST ---

Added additional attachment with 'upower --monitor-detail' output showing problem happening, initially both energy and energy-full display normal values, on the next check they both show exaggerated values, and on the final check energy returns to normal but energy-full stays at exaggerated value (until upower daemon is restarted.)

The version of upower installed is upower-0.9.23-2.fc20.x86_64

--- Additional comment from Matt Keith on 2014-01-05 00:15:07 EST ---



--- Additional comment from Matt Keith on 2014-01-14 03:00:21 EST ---

I have experienced the system inappropriately hibernating twice in the past 2 days due to upower misreporting values.  Not only does it misreport energy_full at times, it also periodically reports energy: to be 0 (quite inaccurately).  

Until this can be resolved I created a perl script to monitor and restart upowerd anytime Energy: = 0 or Energy-Full > 1.1x Energy-Full-Design.

--- Additional comment from Matt Keith on 2014-01-17 19:24:25 EST ---

Here's the instances just today when my script had to restart upowerd...

Fri Jan 17 00:41:41 2014 restarted upowerd because
energy-full was 646.83 greater than acceptable 72.6
Fri Jan 17 03:11:12 2014 restarted upowerd because
energy-full was 641.86 greater than acceptable 72.6
Fri Jan 17 03:34:49 2014 restarted upowerd because
energy-full was 634.94 greater than acceptable 72.6
Fri Jan 17 03:34:56 2014 restarted upowerd because
energy-full was 643.41 greater than acceptable 72.6
Fri Jan 17 04:26:11 2014 restarted upowerd because
energy-full was 638.78 greater than acceptable 72.6
Fri Jan 17 07:34:09 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 07:43:51 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 07:45:30 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 07:47:08 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 08:42:48 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 08:44:27 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 09:25:37 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 10:09:15 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 10:10:53 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 10:12:31 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 10:38:43 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 11:03:24 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 11:16:02 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 11:54:45 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 12:22:28 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 12:30:04 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 12:52:46 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 13:31:01 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 15:01:39 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 15:08:47 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 15:13:56 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 16:26:23 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 17:16:34 2014 restarted upowerd because
energy-full was 324.694 greater than acceptable 72.6
Fri Jan 17 18:07:28 2014 restarted upowerd because
energy was reporting unacceptable value at 0
Fri Jan 17 19:05:09 2014 restarted upowerd because
energy-full was 642.84 greater than acceptable 72.6
[katmeef@katmeefs ~]$

--- Additional comment from Matt Keith on 2014-01-22 00:25:10 EST ---

Even with my script checking every 7 seconds, the system still occasionally goes into hibernation mode erroniously.  This is getting to the point I will need to stop using Fedora core as it's seriously interrupting my ability to work on this machine.  Is there any chance this will be addressed?

--- Additional comment from Matt Keith on 2014-02-02 15:39:27 EST ---

Almost a month after reporting this bug there has been no activity other than my own. Did I mess it up by closing the bug when I thought the problem was fixed then reopening when I realized it was not?  Maybe I should make another bug report?  Anyways my system just hibernated again inappropriately, here's the output from my script showing that upower was in fact showing 0% when there was plenty of battery power remaining...


Sun Feb 2 15:34:37 2014 restarting upowerd because
energy was reporting unacceptable value at 0
Device: /org/freedesktop/UPower/devices/line_power_ADP1
  native-path:          ADP1
  power supply:         yes
  updated:              Sun 02 Feb 2014 03:23:58 PM EST (639 seconds ago)
  has history:          no
  has statistics:       no
  line-power
    online:             no

Device: /org/freedesktop/UPower/devices/battery_BAT0
  native-path:          BAT0
  vendor:               DPONz45165UF957A7123456789ABCDE
  model:                bq20z45165UF957A7123456789ABCDE
  power supply:         yes
  updated:              Sun 02 Feb 2014 03:34:33 PM EST (4 seconds ago)
  has history:          yes
  has statistics:       yes
  battery
    present:             yes
    rechargeable:        yes
    state:               discharging
    energy:              0 Wh
    energy-empty:        0 Wh
    energy-full:         62.26 Wh
    energy-full-design:  66 Wh
    energy-rate:         0 W
    voltage:             10.88 V
    percentage:          0%
    capacity:            94.3333%
  History (charge):
    1391373273	0.000	discharging
    1391373243	37.000	discharging
    1391373213	36.000	discharging
  History (rate):
    1391373273	0.000	discharging
    1391373243	33.606	discharging
    1391373213	35.905	discharging
    1391373183	39.038	discharging

Daemon:
  daemon-version:  0.9.23
  on-battery:      yes
  on-low-battery:  yes
  lid-is-closed:   no
  lid-is-present:  yes
  is-docked:       no
/sys/class/power_supply/ADP1/type:Mains
/sys/class/power_supply/ADP1/power/control:auto
/sys/class/power_supply/ADP1/power/async:disabled
/sys/class/power_supply/ADP1/power/wakeup_abort_count:0
/sys/class/power_supply/ADP1/power/wakeup_active:0
/sys/class/power_supply/ADP1/power/wakeup_total_time_ms:0
/sys/class/power_supply/ADP1/power/wakeup_active_count:1
/sys/class/power_supply/ADP1/power/runtime_enabled:disabled
/sys/class/power_supply/ADP1/power/runtime_active_kids:0
/sys/class/power_supply/ADP1/power/runtime_active_time:0
/sys/class/power_supply/ADP1/power/wakeup_max_time_ms:0
/sys/class/power_supply/ADP1/power/wakeup_count:1
/sys/class/power_supply/ADP1/power/wakeup_last_time_ms:2323
/sys/class/power_supply/ADP1/power/wakeup:enabled
/sys/class/power_supply/ADP1/power/runtime_status:unsupported
/sys/class/power_supply/ADP1/power/runtime_usage:0
/sys/class/power_supply/ADP1/power/wakeup_expire_count:0
/sys/class/power_supply/ADP1/power/runtime_suspended_time:0
/sys/class/power_supply/ADP1/online:0
/sys/class/power_supply/ADP1/uevent:POWER_SUPPLY_NAME=ADP1
/sys/class/power_supply/ADP1/uevent:POWER_SUPPLY_ONLINE=0
/sys/class/power_supply/BAT0/type:Battery
/sys/class/power_supply/BAT0/power_now:33732000
/sys/class/power_supply/BAT0/alarm:0
/sys/class/power_supply/BAT0/power/control:auto
/sys/class/power_supply/BAT0/power/async:disabled
/sys/class/power_supply/BAT0/power/wakeup_abort_count:0
/sys/class/power_supply/BAT0/power/wakeup_active:0
/sys/class/power_supply/BAT0/power/wakeup_total_time_ms:0
/sys/class/power_supply/BAT0/power/wakeup_active_count:1
/sys/class/power_supply/BAT0/power/runtime_enabled:disabled
/sys/class/power_supply/BAT0/power/runtime_active_kids:0
/sys/class/power_supply/BAT0/power/runtime_active_time:0
/sys/class/power_supply/BAT0/power/wakeup_max_time_ms:0
/sys/class/power_supply/BAT0/power/wakeup_count:1
/sys/class/power_supply/BAT0/power/wakeup_last_time_ms:2859
/sys/class/power_supply/BAT0/power/wakeup:enabled
/sys/class/power_supply/BAT0/power/runtime_status:unsupported
/sys/class/power_supply/BAT0/power/runtime_usage:0
/sys/class/power_supply/BAT0/power/wakeup_expire_count:0
/sys/class/power_supply/BAT0/power/runtime_suspended_time:0
/sys/class/power_supply/BAT0/capacity:37
/sys/class/power_supply/BAT0/status:Discharging
/sys/class/power_supply/BAT0/voltage_now:10878000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_NAME=BAT0
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_STATUS=Discharging
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_PRESENT=1
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_TECHNOLOGY=Unknown
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_CYCLE_COUNT=0
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_VOLTAGE_MIN_DESIGN=11210000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_VOLTAGE_NOW=10878000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_POWER_NOW=33732000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_ENERGY_FULL_DESIGN=66000000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_ENERGY_FULL=62260000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_ENERGY_NOW=23270000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_CAPACITY=37
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_MODEL_NAME=bq20z45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_MANUFACTURER=DPONz45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_SERIAL_NUMBER=
/sys/class/power_supply/BAT0/energy_now:23270000
/sys/class/power_supply/BAT0/model_name:bq20z45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/manufacturer:DPONz45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/technology:Unknown
/sys/class/power_supply/BAT0/cycle_count:0
/sys/class/power_supply/BAT0/energy_full_design:66000000
/sys/class/power_supply/BAT0/voltage_min_design:11210000
/sys/class/power_supply/BAT0/energy_full:62260000
/sys/class/power_supply/BAT0/present:1
[root@katmeefs katmeef]#

Comment 1 Matt Keith 2014-02-02 20:43:51 UTC
*** Bug 1048383 has been marked as a duplicate of this bug. ***

Comment 2 Matt Keith 2014-02-12 12:30:12 UTC
I'm still experiencing upower intermittently wrongly reporting battery energy as 0  and regardless that my script runs every 7 seconds to identify and restart upowerd when it starts reporting insane values, the system triggers a hibernate cycle if this happens while on battery.  It's extremely frustrating to have the system randomly hibernate while trying to work and especially so when it causes issues with the virtual machine I use for work.

Comment 3 Matt Keith 2014-02-19 09:37:52 UTC
Approximately once per day I"m still experiencing my laptop hibernating inappropriately when upower incorrectly reports the battery power as 0.  Is there any further information I can provide to help investigate the problem?  It's extremely frustrating as it sometimes messes up my wifi and my virtual machine guest.

Comment 4 Matt Keith 2014-02-28 04:54:46 UTC
Sorry to sound frustrated but I'm getting to my wits end with my system at least once a day hibernating when it's nowhere near low battery.  My script resets upower when its in this state so the battery shows the accurate amount of charge again but by that point it's too late, gnome has displayed a notification the system is below the critical point and it hibernates.  Do not have this problem in ubuntu or OSX and it's really upsetting when I'm trying to work and the system randomly hibernates.  Could someone please help?

Comment 5 Adrien Bustany 2014-03-02 22:59:23 UTC
Hello Matt,

can you check the values of /sys/bus/acpi/drivers/battery/*/power_supply/BAT*/energy_* when the issue happens? I bumped into it here too, restarting udev also helped and the values in sysfs look sane. I'd like to see if the sysfs values still look OK when the issue happens next time... Btw I'm also running on a Macbook Pro.

Comment 6 Bastien Nocera 2014-03-03 02:28:44 UTC
(In reply to Adrien Bustany from comment #5)
> Hello Matt,
> 
> can you check the values of
> /sys/bus/acpi/drivers/battery/*/power_supply/BAT*/energy_* when the issue
> happens? I bumped into it here too, restarting udev also helped and the
> values in sysfs look sane. I'd like to see if the sysfs values still look OK
> when the issue happens next time... Btw I'm also running on a Macbook Pro.

Have you tried updating the firmware on that machine (in OSX)?

Sounds like the hardware is reporting dud values to the kernel. We'll see shortly (with what Adrien is asking) whether the problem is one in UPower or in the kernel/hardware.

Comment 7 Adrien Bustany 2014-03-03 21:38:16 UTC
Hmm so I got the bug again, and checked the values in sysfs:

[abustany@localhost ~]$ cat /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/energy_now 
34840000
[abustany@localhost ~]$ cat /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/energy_full
65620000
[abustany@localhost ~]$ cat /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/energy_full_design 
63300000

That looks pretty OK to me, and restarting upower (sudo systemctl restart upower.service) makes the issue vanish. Interestingly the issue didn't appear right after resume this time, maybe 10 to 15 minutes after.

I haven't updated the firmware on this machine, but I got it fairly recently (1 month ago maybe). Not sure if they ship them with the latest firmware, I could reboot into OS X to confirm. But anyway, the values in sysfs look consistent to me (and stay the same after the upower restart of course).

Comment 8 Matt Keith 2014-03-05 13:53:57 UTC
Thanks for the replies.  Before I took OSX off the machine this past December it had all the updates available applied.

I've added the requested commands to my script which checks for insane values and restarts upower when required.  

The script helps when upower reports energy-full excessively high; however, when upower reports energy incorrectly as 0 the script is unable to stop my system from hibernating itself.  I will post the results of the script if it acts up tonight.

FYI this is the script:

#!/usr/bin/env perl
#
#This is a script to restart upower anytime it starts
#showing insane values for battery energy-full value
#side-note: this is my first perl script.
#borrowed some stuff from lighter.pl.  thats how i roll
#mak

use strict;
use warnings;

my $energyf;
my $energy;
my $energy_unacceptable=0;
my $energyfd_acceptable=72.6;
my $date;
my $debug=0;

sub getvalues {
    $energyf= trim(`upower -d | grep energy-full:`);
    $energy=  trim(`upower -d | grep energy:`);
    debug_msg( "upower is reporting battery energy-full as $energyf\n" );
    debug_msg( "upower is reporting battery energy as $energy\n" );
}

sub trim {
    my $string = shift;
    return if not $string;
    $string =~ s/[^.0-9]+//g;
    return $string;
}

sub debug_msg {
    print shift if $debug==1;
}

for( ; ; )
{
   getvalues();

   if ($energy == $energy_unacceptable) {
      debug_msg( "Energy level insane at $energy, restarting upower\n\n" );
      my $date = localtime;
      system "echo $date restarting upowerd because >> /var/log/upower_restart";
      system "echo energy was reporting unacceptable value at $energy >> /var/log/upower_restart";
      system "upower -d >> /var/log/upower_restart";
      system "grep -r . /sys/class/power_supply/* >> /var/log/upower_restart";
      system "cat /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/energy_now >> /var/log/upower_restart";
      system "cat /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/energy_full >> /var/log/upower_restart";
      system "cat /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/energy_full_design >> /var/log/upower_restart";
      system "systemctl restart upower";
      sleep 7;
   }

   else {
      debug_msg( "Energy level sane at $energy, checking energy_full value \n\n" );

      if ($energyf < $energyfd_acceptable) {
         debug_msg( "Energy Full level sane as $energyf < $energyfd_acceptable , doing nothing \n\n" );
         sleep 7;
      }

      else {
         debug_msg( "Energy Full level insane at $energyf > $energyfd_acceptable , restarting upower\n\n" );
         my $date = localtime;
         system "echo $date restarting upowerd because >> /var/log/upower_restart";
         system "echo energy-full was $energyf greater than acceptable $energyfd_acceptable >> /var/log/upower_restart";
         system "upower -d >> /var/log/upower_restart";
         system "grep -r . /sys/class/power_supply/* >> /var/log/upower_restart";
         system "cat /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/energy_now >> /var/log/upower_restart";
         system "cat /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/energy_full >> /var/log/upower_restart";
         system "cat /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/energy_full_design >> /var/log/upower_restart";
         system "systemctl restart upower";
         sleep 7;
      }
   }      

}

exit 0;


Matt

Comment 9 Matt Keith 2014-03-05 14:20:57 UTC
Well that didnt take long.  I believe this shows the error is with upower, here's the output of the script taken before the system hibernated.  Too bad there was no way to abort the hibernation cycle, even though upower is restarted by the script and the battery indicator goes back to normal the system still has to hibernate.

[katmeef@katmeefs ~]$ cat /var/log/upower_restart 
Wed Mar 5 09:16:59 2014 restarting upowerd because
energy was reporting unacceptable value at 0
Device: /org/freedesktop/UPower/devices/battery_BAT0
  native-path:          BAT0
  vendor:               DPONz45165UF957A7123456789ABCDE
  model:                bq20z45165UF957A7123456789ABCDE
  power supply:         yes
  updated:              Wed 05 Mar 2014 09:16:53 AM EST (6 seconds ago)
  has history:          yes
  has statistics:       yes
  battery
    present:             yes
    rechargeable:        yes
    state:               discharging
    energy:              0 Wh
    energy-empty:        0 Wh
    energy-full:         65.6 Wh
    energy-full-design:  66 Wh
    energy-rate:         0 W
    voltage:             12.216 V
    percentage:          0%
    capacity:            98.5%
  History (charge):
    1394029013	0.000	discharging
    1394028983	93.000	discharging
    1394028923	94.000	discharging
  History (rate):
    1394029013	0.000	discharging
    1394028983	14.178	discharging
    1394028953	9.842	discharging
    1394028923	9.072	discharging

Device: /org/freedesktop/UPower/devices/line_power_ADP1
  native-path:          ADP1
  power supply:         yes
  updated:              Wed 05 Mar 2014 08:59:47 AM EST (1032 seconds ago)
  has history:          no
  has statistics:       no
  line-power
    online:             no

Daemon:
  daemon-version:  0.9.23
  on-battery:      yes
  on-low-battery:  yes
  lid-is-closed:   no
  lid-is-present:  yes
  is-docked:       no
/sys/class/power_supply/ADP1/type:Mains
/sys/class/power_supply/ADP1/power/control:auto
/sys/class/power_supply/ADP1/power/async:disabled
/sys/class/power_supply/ADP1/power/wakeup_abort_count:0
/sys/class/power_supply/ADP1/power/wakeup_active:0
/sys/class/power_supply/ADP1/power/wakeup_total_time_ms:0
/sys/class/power_supply/ADP1/power/wakeup_active_count:1
/sys/class/power_supply/ADP1/power/runtime_enabled:disabled
/sys/class/power_supply/ADP1/power/runtime_active_kids:0
/sys/class/power_supply/ADP1/power/runtime_active_time:0
/sys/class/power_supply/ADP1/power/wakeup_max_time_ms:0
/sys/class/power_supply/ADP1/power/wakeup_count:1
/sys/class/power_supply/ADP1/power/wakeup_last_time_ms:2336
/sys/class/power_supply/ADP1/power/wakeup:enabled
/sys/class/power_supply/ADP1/power/runtime_status:unsupported
/sys/class/power_supply/ADP1/power/runtime_usage:0
/sys/class/power_supply/ADP1/power/wakeup_expire_count:0
/sys/class/power_supply/ADP1/power/runtime_suspended_time:0
/sys/class/power_supply/ADP1/online:0
/sys/class/power_supply/ADP1/uevent:POWER_SUPPLY_NAME=ADP1
/sys/class/power_supply/ADP1/uevent:POWER_SUPPLY_ONLINE=0
/sys/class/power_supply/BAT0/type:Battery
/sys/class/power_supply/BAT0/power_now:9593000
/sys/class/power_supply/BAT0/alarm:0
/sys/class/power_supply/BAT0/power/control:auto
/sys/class/power_supply/BAT0/power/async:disabled
/sys/class/power_supply/BAT0/power/wakeup_abort_count:0
/sys/class/power_supply/BAT0/power/wakeup_active:0
/sys/class/power_supply/BAT0/power/wakeup_total_time_ms:0
/sys/class/power_supply/BAT0/power/wakeup_active_count:16
/sys/class/power_supply/BAT0/power/runtime_enabled:disabled
/sys/class/power_supply/BAT0/power/runtime_active_kids:0
/sys/class/power_supply/BAT0/power/runtime_active_time:0
/sys/class/power_supply/BAT0/power/wakeup_max_time_ms:0
/sys/class/power_supply/BAT0/power/wakeup_count:16
/sys/class/power_supply/BAT0/power/wakeup_last_time_ms:33484306
/sys/class/power_supply/BAT0/power/wakeup:enabled
/sys/class/power_supply/BAT0/power/runtime_status:unsupported
/sys/class/power_supply/BAT0/power/runtime_usage:0
/sys/class/power_supply/BAT0/power/wakeup_expire_count:0
/sys/class/power_supply/BAT0/power/runtime_suspended_time:0
/sys/class/power_supply/BAT0/capacity:93
/sys/class/power_supply/BAT0/status:Discharging
/sys/class/power_supply/BAT0/voltage_now:12237000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_NAME=BAT0
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_STATUS=Discharging
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_PRESENT=1
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_TECHNOLOGY=Unknown
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_CYCLE_COUNT=0
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_VOLTAGE_MIN_DESIGN=11210000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_VOLTAGE_NOW=12237000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_POWER_NOW=9593000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_ENERGY_FULL_DESIGN=66000000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_ENERGY_FULL=65010000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_ENERGY_NOW=60990000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_CAPACITY=93
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_MODEL_NAME=bq20z45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_MANUFACTURER=DPONz45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_SERIAL_NUMBER=
/sys/class/power_supply/BAT0/energy_now:60990000
/sys/class/power_supply/BAT0/model_name:bq20z45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/manufacturer:DPONz45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/technology:Unknown
/sys/class/power_supply/BAT0/cycle_count:0
/sys/class/power_supply/BAT0/energy_full_design:66000000
/sys/class/power_supply/BAT0/voltage_min_design:11210000
/sys/class/power_supply/BAT0/energy_full:65010000
/sys/class/power_supply/BAT0/present:1
60990000
65010000
66000000
[katmeef@katmeefs ~]$

Comment 10 Matt Keith 2014-03-06 06:39:39 UTC
Here's the script output from the other failure scenario where energy_full reports a nonsensically high value.  This failure scenario only results in the battery showing lower than it should in gnome but it does not cause the system to hibernate.

Thu Mar 6 01:19:56 2014 restarting upowerd because
energy-full was 948.306 greater than acceptable 72.6
Device: /org/freedesktop/UPower/devices/battery_BAT0
  native-path:          BAT0
  vendor:               DPONz45165UF957A7123456789ABCDE
  model:                bq20z45165UF957A7123456789ABCDE
  power supply:         yes
  updated:              Thu 06 Mar 2014 01:19:55 AM EST (1 seconds ago)
  has history:          yes
  has statistics:       yes
  battery
    present:             yes
    rechargeable:        yes
    state:               discharging
    energy:              948.306 Wh
    energy-empty:        0 Wh
    energy-full:         948.306 Wh
    energy-full-design:  66 Wh
    energy-rate:         18.563 W
    voltage:             11.23 V
    time to empty:       51.1 hours
    percentage:          100%
    capacity:            96.9848%
  History (charge):
    1394086795	100.000	discharging
    1394086735	51.000	discharging
  History (rate):
    1394086795	18.563	discharging
    1394086765	16.821	discharging
    1394086735	22.588	discharging
    1394086705	30.230	discharging

Device: /org/freedesktop/UPower/devices/line_power_ADP1
  native-path:          ADP1
  power supply:         yes
  updated:              Thu 06 Mar 2014 01:03:20 AM EST (996 seconds ago)
  has history:          no
  has statistics:       no
  line-power
    online:             no

Daemon:
  daemon-version:  0.9.23
  on-battery:      yes
  on-low-battery:  no
  lid-is-closed:   no
  lid-is-present:  yes
  is-docked:       no
/sys/class/power_supply/ADP1/type:Mains
/sys/class/power_supply/ADP1/power/control:auto
/sys/class/power_supply/ADP1/power/async:disabled
/sys/class/power_supply/ADP1/power/wakeup_abort_count:0
/sys/class/power_supply/ADP1/power/wakeup_active:0
/sys/class/power_supply/ADP1/power/wakeup_total_time_ms:0
/sys/class/power_supply/ADP1/power/wakeup_active_count:1
/sys/class/power_supply/ADP1/power/runtime_enabled:disabled
/sys/class/power_supply/ADP1/power/runtime_active_kids:0
/sys/class/power_supply/ADP1/power/runtime_active_time:0
/sys/class/power_supply/ADP1/power/wakeup_max_time_ms:0
/sys/class/power_supply/ADP1/power/wakeup_count:1
/sys/class/power_supply/ADP1/power/wakeup_last_time_ms:2336
/sys/class/power_supply/ADP1/power/wakeup:enabled
/sys/class/power_supply/ADP1/power/runtime_status:unsupported
/sys/class/power_supply/ADP1/power/runtime_usage:0
/sys/class/power_supply/ADP1/power/wakeup_expire_count:0
/sys/class/power_supply/ADP1/power/runtime_suspended_time:0
/sys/class/power_supply/ADP1/online:0
/sys/class/power_supply/ADP1/uevent:POWER_SUPPLY_NAME=ADP1
/sys/class/power_supply/ADP1/uevent:POWER_SUPPLY_ONLINE=0
/sys/class/power_supply/BAT0/type:Battery
/sys/class/power_supply/BAT0/power_now:24420000
/sys/class/power_supply/BAT0/alarm:0
/sys/class/power_supply/BAT0/power/control:auto
/sys/class/power_supply/BAT0/power/async:disabled
/sys/class/power_supply/BAT0/power/wakeup_abort_count:0
/sys/class/power_supply/BAT0/power/wakeup_active:0
/sys/class/power_supply/BAT0/power/wakeup_total_time_ms:0
/sys/class/power_supply/BAT0/power/wakeup_active_count:2
/sys/class/power_supply/BAT0/power/runtime_enabled:disabled
/sys/class/power_supply/BAT0/power/runtime_active_kids:0
/sys/class/power_supply/BAT0/power/runtime_active_time:0
/sys/class/power_supply/BAT0/power/wakeup_max_time_ms:0
/sys/class/power_supply/BAT0/power/wakeup_count:2
/sys/class/power_supply/BAT0/power/wakeup_last_time_ms:63534591
/sys/class/power_supply/BAT0/power/wakeup:enabled
/sys/class/power_supply/BAT0/power/runtime_status:unsupported
/sys/class/power_supply/BAT0/power/runtime_usage:0
/sys/class/power_supply/BAT0/power/wakeup_expire_count:0
/sys/class/power_supply/BAT0/power/runtime_suspended_time:0
/sys/class/power_supply/BAT0/capacity:51
/sys/class/power_supply/BAT0/status:Discharging
/sys/class/power_supply/BAT0/voltage_now:11156000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_NAME=BAT0
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_STATUS=Discharging
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_PRESENT=1
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_TECHNOLOGY=Unknown
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_CYCLE_COUNT=0
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_VOLTAGE_MIN_DESIGN=11210000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_VOLTAGE_NOW=11156000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_POWER_NOW=24420000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_ENERGY_FULL_DESIGN=66000000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_ENERGY_FULL=64010000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_ENERGY_NOW=32650000
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_CAPACITY=51
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_MODEL_NAME=bq20z45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_MANUFACTURER=DPONz45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/uevent:POWER_SUPPLY_SERIAL_NUMBER=
/sys/class/power_supply/BAT0/energy_now:32650000
/sys/class/power_supply/BAT0/model_name:bq20z45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/manufacturer:DPONz45165UF957A7123456789ABCDE
/sys/class/power_supply/BAT0/technology:Unknown
/sys/class/power_supply/BAT0/cycle_count:0
/sys/class/power_supply/BAT0/energy_full_design:66000000
/sys/class/power_supply/BAT0/voltage_min_design:11210000
/sys/class/power_supply/BAT0/energy_full:64010000
/sys/class/power_supply/BAT0/present:1
32650000
64010000
66000000
[katmeef@katmeefs ~]

Comment 11 jan p. springer 2014-03-13 16:04:16 UTC
when running matt's script on f19/rMBP 2012 i see the following lines on stderr:

grep: /sys/class/power_supply/ADP1/power/autosuspend_delay_ms: Input/output error
grep: /sys/class/power_supply/BAT0/power/autosuspend_delay_ms: Input/output error

don't know if that's relevant, though.

Comment 12 Matt Keith 2014-03-19 08:32:50 UTC
System has hibernated twice on me this evening when there was plenty of battery life...  When upower falsely triggers hibernation I have scripts running to rmmod the wl driver and hibernate my QEMU VM to prevent issues upon resuming the system, too bad there's not also a command I could run to abort the hibernation...

Comment 13 Matt Keith 2014-03-19 08:34:39 UTC
Jan I see the same error if I run 'grep -r . /sys/class/power_supply/* >> /var/log/upower_restart', not sure if it's relevant

Comment 14 Matt Keith 2014-03-25 07:51:16 UTC
Sorry if this sounds unappreciative but I've been having this problem since January and the dev this bug is assigned to has not replied once.  What are the chances someone will look into this or should I just be looking for a new distro?  It makes using my system for my job quite unpleasant when it spontaneously hibernates with a half-full or more battery.

Comment 15 Bastien Nocera 2014-06-11 09:49:40 UTC
(In reply to Matt Keith from comment #14)
> Sorry if this sounds unappreciative but I've been having this problem since
> January and the dev this bug is assigned to has not replied once.  What are
> the chances someone will look into this or should I just be looking for a
> new distro?  It makes using my system for my job quite unpleasant when it
> spontaneously hibernates with a half-full or more battery.

Given that I'm not able to reproduce the bugs, that the problem only occurs on 2 machines that I know of, and that other distros use the exact same UPower, I doubt changing distros would fix the problem.


(In reply to Adrien Bustany from comment #7)
> Hmm so I got the bug again, and checked the values in sysfs:
> 
> [abustany@localhost ~]$ cat
> /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/energy_now 
> 34840000
> [abustany@localhost ~]$ cat
> /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/energy_full
> 65620000
> [abustany@localhost ~]$ cat
> /sys/bus/acpi/drivers/battery/PNP0C0A\:00/power_supply/BAT0/
> energy_full_design 
> 63300000
> 
> That looks pretty OK to me, and restarting upower (sudo systemctl restart
> upower.service) makes the issue vanish. Interestingly the issue didn't
> appear right after resume this time, maybe 10 to 15 minutes after.
> 
> I haven't updated the firmware on this machine, but I got it fairly recently
> (1 month ago maybe). Not sure if they ship them with the latest firmware, I
> could reboot into OS X to confirm. But anyway, the values in sysfs look
> consistent to me (and stay the same after the upower restart of course).

And the value in capacity is? That's where the percentage is gathered.

In any case, if one of you that can reproduce the problem isn't going to root cause it, we'll need the sections of "/usr/libexec/upowerd -v" output when reproducing the problem. Or everything if it's small enough to be attached to this bug.

Comment 16 Adrien Bustany 2014-06-11 09:53:41 UTC
I'm now running the 3.12 COPR repo (for a couple of months now), which brings an updated upower. I don't have any issue anymore with that one, so I'd say the issue is fixed for me.

Comment 17 jan p. springer 2014-06-11 10:22:39 UTC
i'm now on f20 (upower-0.9.23-2.fc20.x86_64) and use matt's script for restarting upowerd. i don't see intermittent hibernation anymore (w/ the script), but the battery levels still fluctuate. can we move the bug onto f20?

Comment 18 Matt Keith 2014-06-25 04:49:49 UTC
Hasn't happened for a while but just did again this evening.  I've modified my script to grap /usr/libexec/upowerd -v next time it happens, I'll wait for it to happen once more then I'll look into to the 3.12 COPR repo as Adrien has done

Comment 19 jan p. springer 2014-11-24 21:10:40 UTC
with upower-0.9.23-2.fc20.x86_64 and current updates things are running smooth for the last months. please close.

Comment 20 Matt Keith 2014-12-30 17:44:14 UTC
I gave up on Fedora many months ago over this issue, can't confirm.

Comment 21 Bastien Nocera 2015-01-06 11:11:01 UTC
(In reply to jan p. springer from comment #19)
> with upower-0.9.23-2.fc20.x86_64 and current updates things are running
> smooth for the last months. please close.

Great, closing then.

(In reply to Matt Keith from comment #20)
> I gave up on Fedora many months ago over this issue, can't confirm.

Seeing as UPower in other distributions will eventually get updated to the same version...


Note You need to log in before you can comment on or make changes to this bug.