Tuesday, March 03, 2009

HAL: new keys to match kernel version

Since a while there is the problem that e.g. suspend quirks or key mappings differ between kernel versions. While machines with newer kernel versions may need no longer to map scancodes (as in case of ThinkPads) or need no special suspend handling anymore, systems with older kernels may need other handling.

With current HAL versions it's not possible to match the kernel versions (e.g. > 2.6.28), except for a special version, because system.kernel.version is a string. This is especially a problem with data from the hal-info package, since the package depends on no special kernel version.

I added a patch to HAL to provide now these new comparable (using e.g. compare_*) keys:
  • system.kernel.version.major (int)
  • system.kernel.version.minor (int)
  • system.kernel.version.micro (int)
This change will be part of the upcomming 0.5.12 release. For openSUSE 11.1 you can get the latest HAL snapshot from my OSBS repo.
Tech Tags:


Anonymous said...

Hello Danny,

Just a quick note to say thanks for maintaining the repo; I came across your blog post while trying to fix up krandr and updated my wacom packages. As a result, things are running alot better!

One quick question: Have you encountered any problems with suspend/resume that cause randr to fail after a resume? I use the rotate script from http://luke.no-ip.org/x60tablet/examples/rotate

Its a great script, but sometimes KDE hangs. I've modified the script a little to get some more info out of it next time it hangs, but I was wondering in the mean time if you had seen similar behaviour.

Thanks again,

Danny said...

Sorry to planetkde.org and planetsuse.org, somehow this blog post was reposted. No idea why.