[<prev] [next>] [day] [month] [year] [list]
Message-ID: <119632.18101.qm@web26701.mail.ukl.yahoo.com>
Date: Thu, 8 Oct 2009 20:30:58 +0000 (GMT)
From: James Gallagher <jbgallagher2000@...oo.co.uk>
To: linux-kernel@...r.kernel.org
Subject: Kernel doesn't generate a "Discharging" battery event after unplugging AC power on Full battery
(This applies to kernel 2.6.31.2 and older)
If I unplug AC power on an Acer Aspire One with fully charged battery, the kernel/udev events generated indicate the only change as POWER_SUPPLY_ONLINE=0 (from 1), the battery POWER_SUPPLY_STATUS is still indicating FULL, and no change in the battery environment, even though the event is labelled ACTION=change on both the mains (ACAD) and battery (BAT1) (see attached log of the 4 kernel/udev events generated after unplugging)
This causes DeviceKit-power to suspend polling, so the power manager never records the subsequent discharge of the battery (the battery state in /sys updates to "Discharging" about 10 seconds later). The redhat guys on bugzilla are insisting it's a kernel/udev bug, not a DeviceKit-power bug.
This also occurs on a Dell Inspiron 1520, but less predictably - ie sometimes the battery STATE=Discharging and sometimes =FULL.
So Questions?
1. Why does the kernel generate a change event for the battery when there is no change?
2. Why does the battery STATE indicate Full rather than Discharging?
3. Why does it take ~10 seconds for the battery state to change to "Discharging" in /sys, and why is there no accompanying udev event to indicate the status change?
See https://bugzilla.redhat.com/show_bug.cgi?id=521874 (bug has been re-assigned from DeviceKit-power to Kernel)
James Gallagher
(can replies be cc'ed to me, cheers)
View attachment "udev monitor.txt" of type "text/plain" (2162 bytes)
Powered by blists - more mailing lists