Monday, November 26, 2007

HAL patch collection (4)

Here my actual HAL patch collection. I send them already to the HAL mailing list, but they are not aproved yet (also because David isn't active/present on the list).

  • a patch to remove the Eject() methode from dm-devices. The eject command is a ioctl and not supported by dm-devices (at least on Linux). On crypto volumes you should use Teardown() instead, which do the same.
  • a patch to fix calculation of the remaining time of ACPI batteries, if they report the wrong charging state (e.g. if they report 'charged' if the battery is charging). With this patch HAL try to guess the correct state depending on the AC state and the state of the other primary ACPI batteries in the system.
  • a small fix to prevent endless loops on fdi-files with a empty rule (only a match, but nothing merged etc.).
  • two patches for the Dell brightness [1] and killswitch [2] (against hal-info) devices. With kernel 2.4.24 (or this patch) there is now a uevent if the platform device of the dcdbas module get added/removed. Attach the Dell devices now to this platform device in the HAL device tree. This should fix the problem that HAL provide the Dell devices and methodes also if the needed kernel module isn't loaded.
  • extend HAL try to get the smbios information from sysfs on startup instead of call a prober (which call dmidecode, parse the output and set the properties to HAL). If /sys/class/dmi/id isn't present it falls back to the prober.
  • small fix to ignore module and drivers uevents in HAL, since they aren't events for devices
  • a patch, needed also for the Dell devices, to remove also via fdi-files spawned devices if the parent device get removed. Currently the devices get not removed, also if they are not visible in lshal (because the parent was removed), which mean also the may started addons get not stopped.
  • two patches to add more checks: to the partutil code [3] which should prevent possible crashes and to libhal [4] to check e.g. if a given UDI is valid (should start with: /org/freedesktop/Hal/devices/)
  • extend HAL to add also drm (Direct Rendering Manager) devices to the device tree.
  • a fix to stop HAL from flood syslog with warnings if the remaining time get over 60 hours (which can happen on broken batteries)
  • small patch to fix possible segfaults if HAL get compiled without IDs (PCI/PnP/USB) support

These patches are against current HAL git. As always: you can find all my current HAL patches here, if a link to a patch doesn't work, the patch was maybe moved to this directory. The patches are already part of the HAL beta package in my openSUSE buildservice repo.

Tech Tags: