Comment 22 for bug 852406

Revision history for this message
Chris Coulson (chrisccoulson) wrote :

So, dmesg seems to suggest that my laptop does have a second battery slot, and googling around appears to confirm that too:

[ 4.496990] ACPI: Battery Slot [BAT1] (battery absent)
[ 4.504110] ACPI: Battery Slot [BAT0] (battery present)

However, this battery slot only seems to be fully exposed after resume from suspend.

Here's an excerpt of the output of udevadm info --export-db before suspending:

P: /devices/LNXSYSTM:00/device:00/PNP0C0A:00
E: UDEV_LOG=3
E: DEVPATH=/devices/LNXSYSTM:00/device:00/PNP0C0A:00
E: DRIVER=battery
E: MODALIAS=acpi:PNP0C0A:
E: SUBSYSTEM=acpi

P: /devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT0
E: UDEV_LOG=3
E: DEVPATH=/devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT0
E: POWER_SUPPLY_NAME=BAT0
E: POWER_SUPPLY_STATUS=Full
E: POWER_SUPPLY_PRESENT=1
E: POWER_SUPPLY_TECHNOLOGY=Li-ion
E: POWER_SUPPLY_CYCLE_COUNT=0
E: POWER_SUPPLY_VOLTAGE_MIN_DESIGN=11250000
E: POWER_SUPPLY_VOLTAGE_NOW=12816000
E: POWER_SUPPLY_CURRENT_NOW=1000
E: POWER_SUPPLY_CHARGE_FULL_DESIGN=8400000
E: POWER_SUPPLY_CHARGE_FULL=8400000
E: POWER_SUPPLY_CHARGE_NOW=8400000
E: POWER_SUPPLY_MODEL_NAME=DELL M1RPP14
E: POWER_SUPPLY_MANUFACTURER=Samsung SDI
E: POWER_SUPPLY_SERIAL_NUMBER=6116
E: SUBSYSTEM=power_supply

P: /devices/LNXSYSTM:00/device:00/PNP0C0A:01
E: UDEV_LOG=3
E: DEVPATH=/devices/LNXSYSTM:00/device:00/PNP0C0A:01
E: DRIVER=battery
E: MODALIAS=acpi:PNP0C0A:
E: SUBSYSTEM=acpi

And after suspending:

P: /devices/LNXSYSTM:00/device:00/PNP0C0A:00
E: UDEV_LOG=3
E: DEVPATH=/devices/LNXSYSTM:00/device:00/PNP0C0A:00
E: DRIVER=battery
E: MODALIAS=acpi:PNP0C0A:
E: SUBSYSTEM=acpi

P: /devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT0
E: UDEV_LOG=3
E: DEVPATH=/devices/LNXSYSTM:00/device:00/PNP0C0A:00/power_supply/BAT0
E: POWER_SUPPLY_NAME=BAT0
E: POWER_SUPPLY_STATUS=Full
E: POWER_SUPPLY_PRESENT=1
E: POWER_SUPPLY_TECHNOLOGY=Li-ion
E: POWER_SUPPLY_CYCLE_COUNT=0
E: POWER_SUPPLY_VOLTAGE_MIN_DESIGN=11250000
E: POWER_SUPPLY_VOLTAGE_NOW=12816000
E: POWER_SUPPLY_CURRENT_NOW=1000
E: POWER_SUPPLY_CHARGE_FULL_DESIGN=8400000
E: POWER_SUPPLY_CHARGE_FULL=8400000
E: POWER_SUPPLY_CHARGE_NOW=8400000
E: POWER_SUPPLY_MODEL_NAME=DELL M1RPP14
E: POWER_SUPPLY_MANUFACTURER=Samsung SDI
E: POWER_SUPPLY_SERIAL_NUMBER=6116
E: SUBSYSTEM=power_supply

P: /devices/LNXSYSTM:00/device:00/PNP0C0A:01
E: UDEV_LOG=3
E: DEVPATH=/devices/LNXSYSTM:00/device:00/PNP0C0A:01
E: DRIVER=battery
E: MODALIAS=acpi:PNP0C0A:
E: SUBSYSTEM=acpi

P: /devices/LNXSYSTM:00/device:00/PNP0C0A:01/power_supply/BAT1
E: UDEV_LOG=3
E: DEVPATH=/devices/LNXSYSTM:00/device:00/PNP0C0A:01/power_supply/BAT1
E: POWER_SUPPLY_NAME=BAT1
E: POWER_SUPPLY_PRESENT=0
E: SUBSYSTEM=power_supply

Note, /sys/devices/LNXSYSTM:00/device:00/PNP0C0A:01/power_supply doesn't exist before suspend.

So, is this a kernel bug and a upower bug? (ie, should the battery always be exposed and should upower not expose it), or is it just a kernel bug (should it never become exposed). In any case, it makes the power indicator pretty useless in my session, because it always displays my battery as completely empty (both in Unity and gnome-shell)