New sysfs battery interface has a flaw.
Suppose I removed battery from the system, and then booted it.
then gnome power manager has no idea that my system has battery, and
thus it hides battery settings.
It also has a bug that prevents it from hiding battery icon, when I
unplug the battery, in other words, it isn't prepared for battery to
disappear.
I think it would be nice to keep /sys/class/power_supply/BAT0/ even if
battery isn't present.
btw, there is /sys/class/power_supply/BAT0/present, thus maybe this is
just a bug?
Best regards,
Maxim Levitsky
On Sun, Apr 26, 2009 at 04:36:58PM +0300, Maxim Levitsky wrote:
> New sysfs battery interface has a flaw.
>
> Suppose I removed battery from the system, and then booted it.
> then gnome power manager has no idea that my system has battery, and
> thus it hides battery settings.
If after insertion the battery is visible in /sys/class/power_supply/,
then it's not a kernel bug. That's purely gnome issue (or HAL), it
seem to not handle hot-plugged batteries.
> It also has a bug that prevents it from hiding battery icon, when I
> unplug the battery, in other words, it isn't prepared for battery to
> disappear.
Again, you should report that to HAL/Gnome maintainers, so that gnome
power manager would handle battery removal events generated by the
power supply class.
> I think it would be nice to keep /sys/class/power_supply/BAT0/ even if
> battery isn't present.
That isn't always possible. Imagine a battery inside some hot-pluggable
PCI device. Or an USB device, or a battery with a built-in controller
connected through W1 bus (i.e. batteries w/ ds2760 chip).
> btw, there is /sys/class/power_supply/BAT0/present, thus maybe this is
> just a bug?
Nope. And personally I think we should remove the "present"
property, and drivers should learn to remove stuff from power_supply/
if there is no battery inserted. But so far HAL/Gnome/whatever have
to handle both methods.
Thanks,
--
Anton Vorontsov
email: [email protected]
irc://irc.freenode.net/bd2
On Mon, 2009-04-27 at 21:49 +0400, Anton Vorontsov wrote:
> On Sun, Apr 26, 2009 at 04:36:58PM +0300, Maxim Levitsky wrote:
> > New sysfs battery interface has a flaw.
> >
> > Suppose I removed battery from the system, and then booted it.
> > then gnome power manager has no idea that my system has battery, and
> > thus it hides battery settings.
>
> If after insertion the battery is visible in /sys/class/power_supply/,
> then it's not a kernel bug. That's purely gnome issue (or HAL), it
> seem to not handle hot-plugged batteries.
No, I am talking about the following situation:
Suppose:
I keep battery in the closet.
I turn my system on
Gpm has no idea my system has a battery, thus it hides battery tab.
I want to set change battery settings.
>
> > It also has a bug that prevents it from hiding battery icon, when I
> > unplug the battery, in other words, it isn't prepared for battery to
> > disappear.
>
> Again, you should report that to HAL/Gnome maintainers, so that gnome
> power manager would handle battery removal events generated by the
> power supply class.
I did, no reaction so far...
>
> > I think it would be nice to keep /sys/class/power_supply/BAT0/ even if
> > battery isn't present.
>
> That isn't always possible. Imagine a battery inside some hot-pluggable
> PCI device. Or an USB device, or a battery with a built-in controller
> connected through W1 bus (i.e. batteries w/ ds2760 chip).
Ok, why not to do so for acpi devices?
>
> > btw, there is /sys/class/power_supply/BAT0/present, thus maybe this is
> > just a bug?
>
> Nope. And personally I think we should remove the "present"
> property, and drivers should learn to remove stuff from power_supply/
> if there is no battery inserted. But so far HAL/Gnome/whatever have
> to handle both methods.
>
> Thanks,
>
Best regards,
Maxim Levitsky