Re: Battery-related regression between 2.6.17-git3 and 2.6.17-git6

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, 2006-07-04 at 14:48 -0700, Greg KH wrote:
> On Tue, Jul 04, 2006 at 01:55:43PM +0200, Rafael J. Wysocki wrote:
> > On Monday 03 July 2006 22:45, Greg KH wrote:
> > > On Mon, Jul 03, 2006 at 10:26:03PM +0200, Rafael J. Wysocki wrote:
> > > > On Monday 03 July 2006 21:44, Greg KH wrote:
> > > > > On Mon, Jul 03, 2006 at 09:39:22PM +0200, Rafael J. Wysocki wrote:
> > > > > > On Monday 03 July 2006 20:00, Greg KH wrote:
> > > > > > > On Mon, Jul 03, 2006 at 01:16:45PM +0200, Rafael J. Wysocki wrote:
> > > > > > > > Hi,
> > > > > > > > 
> > > > > > > > On Sunday 02 July 2006 11:15, Rafael J. Wysocki wrote:
> > > > > > > > > On Sunday 02 July 2006 00:21, Rafael J. Wysocki wrote:
> > > > > > > > > > With the recent -git on my box (Asus L5D, x86_64 SUSE 10) the powersave
> > > > > > > > > > demon is apparently unable to get the battery status, although the data in
> > > > > > > > > > /proc/acpi/battery/BAT0 seem to be correct.  As a result, battery status
> > > > > > > > > > notification via kpowersave doesn't work and it's hard to notice when the
> > > > > > > > > > battery is low/critical.
> > > > > > > > > > 
> > > > > > > > > > So far I have verified that this feature works fine with 2.6.17-git3 and
> > > > > > > > > > doesn't work with 2.6.17-git6 (-git5 doesn't compile here).
> > > > > > > > > > 
> > > > > > > > > > I'll try to get more information tomorrow (unless someone in the know has
> > > > > > > > > > an idea of what's up ;-) ).
> > > > > > > > > 
> > > > > > > > > I've verified that the problem first appeared in 2.6.17-git4.
> > > > > > > > 
> > > > > > > > Apparently this happens because powersaved takes the battery status
> > > > > > > > information from hald and the following kernel changes make hald crash on
> > > > > > > > my system:
> > > > > > > > 
> > > > > > > > http://kernel.org/git/gitweb.cgi?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=43104f1da88f5335e9a45695df92a735ad550dda
> > > > > > > > http://kernel.org/git/gitweb.cgi?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=bd00949647ddcea47ce4ea8bb2cfcfc98ebf9f2a
> > > > > > > > http://kernel.org/git/gitweb.cgi?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=c182274ffe1277f4e7c564719a696a37cacf74ea
> > > > > > > > http://kernel.org/git/gitweb.cgi?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=9bde7497e0b54178c317fac47a18be7f948dd471
> > > > > > > > http://kernel.org/git/gitweb.cgi?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=36679ea59846d8f34a48f71ca1a37671ca0ad3c5
> > > > > > > > 
> > > > > > > > (ie. after reverting them hald works again).
> > > > > > > 
> > > > > > > Ick, that should not cause any problems, as sysfs should look identical
> > > > > > > to how it was before those patches.  Except that the /sys/class/usb/
> > > > > > > stuff is now symlinks instead of real directories, but HAL has had to
> > > > > > > handle that for a long time now (and it's even documented in
> > > > > > > Documentation/ABI/testing/sysfs-class)
> > > > > > 
> > > > > > Well, apparently one of them happens to trigger a buffer overflow in "my"
> > > > > > version of hal. ;-)
> > > > > > 
> > > > > > > Can you tell me exactly which of the above patches breaks HAL?
> > > > > > 
> > > > > > That would be quite a bit of testing and now I'm sure it's a hal issue.
> > > > > 
> > > > > git bisect would help out a lot.  Or just ask the HAL developers, they
> > > > > might know.
> > > > 
> > > > Anyway I'd have to compile and test at least a couple of kernels.
> > > > [For the record: I'm quite sure that 36679ea59846d8f34a48f71ca1a37671ca0ad3c5
> > > > and 9bde7497e0b54178c317fac47a18be7f948dd471 together break hal on
> > > > my system; this seems to be related to endpoints' paths in sysfs.]
> > > 
> > > I don't understand why that would break HAL, we are just adding new
> > > devices to the sysfs device tree, which the kernel is free to do at any
> > > time.  HAL should not care about that.
> > > 
> > > Oh, and 36679ea59846d8f34a48f71ca1a37671ca0ad3c5 is just an internal api
> > > change, it does not affect userspace in any way.  So I don't see how
> > > that would have anything to do with HAL at all.
> > 
> > Could you please have a look at the end of the attached output of
> > 'strace -f /usr/sbin/hald --daemon=yes --retain-privileges --verbose=yes'
> > (produced on vanilla 2.6.17-git4)?
> > 
> > I'm not sure what exactly happens there, but I think hal crashes due to
> > a buffer overflow.
> 
> Yes, that looks like what is happening.  Perhaps one of the HAL
> developers can point you at a patch that you can apply to your version
> of HAL to get it working.
> 
> Either way, this is not a kernel bug, as it could have happened with any
> very long depth device tree, you were just lucky it didn't happen
> sooner.

Hmm,
  ./hald/util.h:#define HAL_PATH_MAX 256
looks suspicious. :)

Kay

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to [email protected]
More majordomo info at  http://vger.kernel.org/majordomo-info.html
Please read the FAQ at  http://www.tux.org/lkml/

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux