+++ This bug was initially created as a clone of Bug #228155 +++ Hi, it's the first time for me reporting a bug, so please be patient with me ;-) I'm using sys-apps/hal-0.5.12_rc1-r3 USE="X acpi consolekit crypt policykit -apm -debug -dell -disk-partition -doc -laptop (-selinux)" on 2.6.29-gentoo-r1 (x86_64) and starting hal results in # /usr/sbin/hald --daemon=no ** (process:21597): CRITICAL **: hal_property_get_string: assertion `prop->type == HAL_PROPERTY_TYPE_STRING' failed ** (process:21597): CRITICAL **: hal_property_get_string: assertion `prop->type == HAL_PROPERTY_TYPE_STRING' failed ** (process:21597): CRITICAL **: hal_property_get_string: assertion `prop->type == HAL_PROPERTY_TYPE_STRING' failed device udi = /org/freedesktop/Hal/devices/temp/118 serial.originating_device = '/org/freedesktop/Hal/devices/platform_serial8250' (string) serial.device = '/dev/ttyS1' (string) serial.port = 1 0x1 (int) serial.type = 'platform' (string) linux.sysfs_path = '/sys/devices/platform/serial8250/tty/ttyS1' (string) info.parent = '/org/freedesktop/Hal/devices/platform_serial8250' (string) info.category = 'serial' (string) info.product = 'Platform Device (serial8250)' (string) info.subsystem = 'tty' (string) linux.device_file = '/dev/ttyS1' (string) linux.hotplug_type = 2 0x2 (int) linux.subsystem = 'tty' (string) device udi = /org/freedesktop/Hal/devices/temp/119 serial.originating_device = '/org/freedesktop/Hal/devices/platform_serial8250' (string) serial.device = '/dev/ttyS2' (string) serial.port = 2 0x2 (int) serial.type = 'platform' (string) linux.sysfs_path = '/sys/devices/platform/serial8250/tty/ttyS2' (string) info.parent = '/org/freedesktop/Hal/devices/platform_serial8250' (string) info.category = 'serial' (string) info.product = 'Platform Device (serial8250)' (string) info.subsystem = 'tty' (string) linux.device_file = '/dev/ttyS2' (string) linux.hotplug_type = 2 0x2 (int) linux.subsystem = 'tty' (string) device udi = /org/freedesktop/Hal/devices/temp/120 serial.originating_device = '/org/freedesktop/Hal/devices/platform_serial8250' (string) serial.device = '/dev/ttyS3' (string) serial.port = 3 0x3 (int) serial.type = 'platform' (string) linux.sysfs_path = '/sys/devices/platform/serial8250/tty/ttyS3' (string) info.parent = '/org/freedesktop/Hal/devices/platform_serial8250' (string) info.category = 'serial' (string) info.product = 'Platform Device (serial8250)' (string) info.subsystem = 'tty' (string) linux.device_file = '/dev/ttyS3' (string) linux.hotplug_type = 2 0x2 (int) linux.subsystem = 'tty' (string) device udi = /org/freedesktop/Hal/devices/temp/97 hiddev.device = '/dev/usb/hiddev0' (string) linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.2/2-5.2:1.1/usb/hiddev0' (string) info.parent = '/org/freedesktop/Hal/devices/usb_device_46d_c51b_noserial_if1' (string) info.category = 'hiddev' (string) info.product = 'Logitech USB Receiver' (string) info.subsystem = 'usb' (string) linux.device_file = '/dev/usb/hiddev0' (string) hiddev.product = 'Logitech USB Receiver' (string) linux.hotplug_type = 2 0x2 (int) linux.subsystem = 'usb' (string) *** [DIE] hald_runner.c:runner_died():202 : Runner died As I'm not sure I should really post the complete --verbose=yes log (it's 2.6MB!!) I will try to present the most peculiar things: # grep -i error hald-log 21:37:35.598 [E] acpi.c:762: Couldn't open /proc/acpi/battery: Error opening directory '/proc/acpi/battery': No such file or directory 21:37:35.598 [E] acpi.c:762: Couldn't open /proc/acpi/button/lid: Error opening directory '/proc/acpi/button/lid': No such file or directory 21:37:35.823 [E] acpi.c:762: Couldn't open /proc/acpi/battery: Error opening directory '/proc/acpi/battery': No such file or directory 21:37:35.823 [E] acpi.c:762: Couldn't open /proc/acpi/fan: Error opening directory '/proc/acpi/fan': No such file or directory 21:37:35.823 [E] acpi.c:762: Couldn't open /proc/acpi/ac_adapter: Error opening directory '/proc/acpi/ac_adapter': No such file or directory 21:37:35.823 [E] acpi.c:762: Couldn't open /proc/acpi/button/lid: Error opening directory '/proc/acpi/button/lid': No such file or directory 21:37:35.823 [E] acpi.c:762: Couldn't open /proc/acpi/button/sleep: Error opening directory '/proc/acpi/button/sleep': No such file or directory 21:37:35.842 [E] hald_runner.c:671: Error running 'hald-addon-storage': org.freedesktop.DBus.Error.Disconnected: Connection was disconnected before a reply was received # grep -i fail hal-verbose.log ** (process:21388): CRITICAL **: hal_property_get_string: assertion `prop->type == HAL_PROPERTY_TYPE_STRING' failed ** (process:21388): CRITICAL **: hal_property_get_string: assertion `prop->type == HAL_PROPERTY_TYPE_STRING' failed ** (process:21388): CRITICAL **: hal_property_get_string: assertion `prop->type == HAL_PROPERTY_TYPE_STRING' failed 21:37:35.827 [I] device.c:4653: device removed due to prober fail 21:37:35.828 [I] device.c:4653: device removed due to prober fail 21:37:35.828 [I] device.c:4653: device removed due to prober fail 21:37:35.836 [I] device.c:4653: device removed due to prober fail # grep -i warn hal-verbose.log (no output) So as my Computer is not a Laptop, I didn't enable battery in the kernel, the directory /proc/acpi/button contains only a directory 'power', 'fan' doesn't exist either. I'm not sure if this is really the critical point or if the best hint is the message hald_runner.c:671: Error running 'hald-addon-storage': org.freedesktop.DBus.Error.Disconnected: Connection was disconnected before a reply was received which I can't do anything with it. The mentioned bug 228155 states the acpi issue is solved, but why does it still log them as an error? If hal tries to open those files and takes those opening failures just as an information, going on without major problems, IMHO those opening failures should be stated as information or warning only, not as an error. So any help is greatly appreciated. Thank you in advance Raimund
*** Bug 269304 has been marked as a duplicate of this bug. ***
Well, after some upgrading/downgrading/reinstalling of hal, udev, dbus, kernel, ... one error message is gone: [E] hald_runner.c:671: Error running 'hald-addon-storage': org.freedesktop.DBus.Error.Disconnected: Connection was disconnected before a reply was received by stracing the hald, I could follow up the "CRITICAL..." messages to issues with soundcards. By disabling all soundcard hardware in the kernel, also these messages went away. They seemed to be not so critical... Unfortunatly, the last message *** [DIE] hald_runner.c:runner_died():202 : Runner died still remains. That means, hal is still quitting right after startup. Any ideas about how to follow up the error? Hints are most welcome.
please paste your emerge --info.
Ok, this is a snapshot of my emerge --info. At the moment, it keeps changing per day... Portage 2.1.6.13 (default/linux/amd64/2008.0, gcc-4.4.0, glibc-2.9_p20081201-r2, 2.6.29-gentoo-r3 x86_64) ================================================================= System uname: Linux-2.6.29-gentoo-r3-x86_64-Intel-R-_Core-TM-2_Quad_CPU_Q9550_@_2.83GHz-with-gentoo-2.0.0 Timestamp of tree: Sun, 17 May 2009 19:15:01 +0000 app-shells/bash: 4.0_p17-r1 dev-java/java-config: 2.1.7 dev-lang/python: 2.6.2 dev-util/cmake: 2.6.2-r1 sys-apps/baselayout: 2.0.0 sys-apps/openrc: 0.4.3-r2 sys-apps/sandbox: 1.9 sys-devel/autoconf: 2.13, 2.63-r1 sys-devel/automake: 1.5, 1.9.6-r2, 1.10.2 sys-devel/binutils: 2.19.1-r1 sys-devel/gcc-config: 1.4.1 sys-devel/libtool: 2.2.6a virtual/os-headers: 2.6.29 ACCEPT_KEYWORDS="amd64 ~amd64 ~x86" CBUILD="x86_64-pc-linux-gnu" CFLAGS="-march=core2 -O3 -pipe -fomit-frame-pointer" CHOST="x86_64-pc-linux-gnu" CONFIG_PROTECT="/etc" CONFIG_PROTECT_MASK="/etc/ca-certificates.conf /etc/env.d /etc/env.d/java/ /etc/eselect/postgresql /etc/fonts/fonts.conf /etc/gconf /etc/gentoo-release /etc/revdep-rebuild /etc/sandbox.d /etc/terminfo /etc/texmf/language.dat.d /etc/texmf/language.def.d /etc/texmf/updmap.d /etc/texmf/web2c /etc/udev/rules.d" CXXFLAGS="-march=core2 -O3 -pipe -fomit-frame-pointer" DISTDIR="/usr/portage/distfiles" FEATURES="distlocks fixpackages parallel-fetch protect-owned sandbox sfperms strict unmerge-orphans userfetch" GENTOO_MIRRORS="ftp://ftp.tu-clausthal.de/pub/linux/gentoo http://ftp.spline.inf.fu-berlin.de/mirrors/gentoo ftp://sunsite.informatik.rwth-aachen.de/pub/Linux/gentoo" LANG="de_DE.UTF-8" LDFLAGS="-Wl,-O1" LINGUAS="de en" MAKEOPTS="-j5" PKGDIR="/usr/portage/packages" PORTAGE_CONFIGROOT="/" PORTAGE_RSYNC_OPTS="--recursive --links --safe-links --perms --times --compress --force --whole-file --delete --stats --timeout=180 --exclude=/distfiles --exclude=/local --exclude=/packages" PORTAGE_TMPDIR="/var/tmp" PORTDIR="/usr/portage" PORTDIR_OVERLAY="/usr/local/portage/layman/gcc-porting /usr/local/portage/layman/rbu /usr/local/portage/layman/gnome /usr/local/portage" SYNC="rsync://rsync.de.gentoo.org/gentoo-portage" USE="3dnow 3dnowext X acl acpi alsa amd64 berkdb bluetooth bzip2 cairo calendar cdparanoia cdr cli consolekit cracklib crypt css cups cvs cxx dbus dga directfb dri dts dv dvb dvd dvdr dvdread emacs encode exif expat fam fbcon ffmpeg fftw fontconfig fortran ftp gdbm gif gimp glibc-omitfp gnome gnome-keyring gnuplot gnustep gnutls gphoto2 gpm gsl gtk gzip hal hddtemp iconv ieee1394 imagemagick imap ipv6 isdnlog java6 jpeg jpeg2k kerberos lame lapack latex libnotify lirc lm_sensors mbox midi mime mmx mng mp3 mpeg mplayer mudflap mule multilib ncurses nls nntp nptl nptlonly odbc ogg opengl openmp oss pam pcre pdf perl png posix postgres pppd python qt3 qt4 quicktime raw readline reflection samba scanner seamonkey session smp spl sse sse2 ssl subversion svg sysfs syslog tcpd threads tiff truetype unicode usb v4l2 vcd vorbis x264 xft xine xml xorg xv xvid zlib" ALSA_CARDS="ali5451 als4000 atiixp atiixp-modem bt87x ca0106 cmipci emu10k1x ens1370 ens1371 es1938 es1968 fm801 hda-intel intel8x0 intel8x0m maestro3 trident usb-audio via82xx via82xx-modem ymfpci" ALSA_PCM_PLUGINS="adpcm alaw asym copy dmix dshare dsnoop empty extplug file hooks iec958 ioplug ladspa lfloat linear meter mmap_emul mulaw multi null plug rate route share shm softvol" APACHE2_MODULES="actions alias auth_basic authn_alias authn_anon authn_dbm authn_default authn_file authz_dbm authz_default authz_groupfile authz_host authz_owner authz_user autoindex cache dav dav_fs dav_lock deflate dir disk_cache env expires ext_filter file_cache filter headers include info log_config logio mem_cache mime mime_magic negotiation rewrite setenvif speling status unique_id userdir usertrack vhost_alias" CAMERAS="canon" ELIBC="glibc" INPUT_DEVICES="keyboard mouse evdev" KERNEL="linux" LCD_DEVICES="bayrad cfontz cfontz633 glk hd44780 lb216 lcdm001 mtxorb ncurses text" LINGUAS="de en" USERLAND="GNU" VIDEO_CARDS="radeon vesa fbdev fglrx" Unset: CPPFLAGS, CTARGET, EMERGE_DEFAULT_OPTS, FFLAGS, INSTALL_MASK, LC_ALL, PORTAGE_COMPRESS, PORTAGE_COMPRESS_FLAGS, PORTAGE_RSYNC_EXTRA_OPTS
There is one more piece of info that would be helpful to diagnose the issue and that would be the output of: $ emerge -pv hal But that being said, the following could cause the problem you had: - You built several system components (udev, hal, acpid) against old kernel-headers - You have the wrong ACPI options selected in your kernel (you want all the new ACPI options on) - A package was installed from an overlay that is superceding the official Portage version that is causing issues Additional issue with your configuration: - You have amd64, ~amd64, ~x86 in your acceptable keywords. You sometimes will pull in packages which are known not to be ready on amd64 yet. This is what your ACPI configuration in your kernel should look like: grep ACPI /usr/src/linux-2.6.29-gentoo-r4/.config CONFIG_X86_64_ACPI_NUMA=y # Power management and ACPI options CONFIG_ACPI=y # CONFIG_ACPI_PROCFS is not set CONFIG_ACPI_PROCFS_POWER=y CONFIG_ACPI_SYSFS_POWER=y CONFIG_ACPI_PROC_EVENT=y CONFIG_ACPI_AC=y CONFIG_ACPI_BATTERY=y CONFIG_ACPI_BUTTON=y CONFIG_ACPI_FAN=y CONFIG_ACPI_DOCK=y CONFIG_ACPI_PROCESSOR=y CONFIG_ACPI_HOTPLUG_CPU=y CONFIG_ACPI_THERMAL=y CONFIG_ACPI_NUMA=y # CONFIG_ACPI_CUSTOM_DSDT is not set CONFIG_ACPI_BLACKLIST_YEAR=0 # CONFIG_ACPI_DEBUG is not set # CONFIG_ACPI_PCI_SLOT is not set CONFIG_ACPI_CONTAINER=y # CONFIG_ACPI_SBS is not set CONFIG_X86_ACPI_CPUFREQ=y CONFIG_X86_POWERNOW_K8_ACPI=y CONFIG_PNPACPI=y CONFIG_BLK_DEV_IDEACPI=y CONFIG_ATA_ACPI=y # CONFIG_PATA_ACPI is not set # CONFIG_THINKPAD_ACPI is not set CONFIG_ACPI_WMI=y # CONFIG_ACPI_ASUS is not set # CONFIG_ACPI_TOSHIBA is not set
> There is one more piece of info that would be helpful to diagnose the issue and > that would be the output of: > $ emerge -pv hal Well, I put that on the very beginning of this bugreport: sys-apps/hal-0.5.12_rc1-r3 USE="X acpi consolekit crypt policykit -apm -debug -dell -disk-partition -doc -laptop (-selinux)" but meanwhile, I tried it without console-/policykit, the error stays. Finally, I went back to hal-0.5.11-r8, and disabled all possible USE-Flags: -X, -acpi, -consolekit, -crypt, -policykit, -laptop -- it makes no difference! Once again, I reemerged udev and acpid. ldd /usr/sbin/hald provides: linux-vdso.so.1 => (0x00007fff8ebfe000) libdbus-glib-1.so.2 => /usr/lib/libdbus-glib-1.so.2 (0x00007f478660b000) libgobject-2.0.so.0 => /usr/lib/libgobject-2.0.so.0 (0x00007f47863c3000) libglib-2.0.so.0 => /usr/lib/libglib-2.0.so.0 (0x00007f47860cf000) libdbus-1.so.3 => /usr/lib/libdbus-1.so.3 (0x00007f4785e8e000) libm.so.6 => /lib/libm.so.6 (0x00007f4785c0a000) libc.so.6 => /lib/libc.so.6 (0x00007f478589f000) libnsl.so.1 => /lib/libnsl.so.1 (0x00007f4785685000) /lib64/ld-linux-x86-64.so.2 (0x00007f478682d000) so to get stable libraries, I selected dbus-glib-0.76, glib-2.18.4-r2 and dbus-1.2.3-r1. Only a downgrade of udev would be rather complicated: [ebuild UD] sys-fs/udev-124-r2 [141] USE="(-selinux)" 204 kB [blocks B ] <sys-fs/udev-133 ("<sys-fs/udev-133" is blocking sys-apps/openrc-0.4.3-r2) Total: 1 package (1 downgrade), Size of downloads: 204 kB Conflict: 1 block (1 unsatisfied) * Error: The above package list contains packages which cannot be * installed at the same time on the same system. ('installed', '/', 'sys-apps/openrc-0.4.3-r2', 'nomerge') pulled in by sys-apps/openrc required by ('installed', '/', 'sys-apps/baselayout-2.0.0', 'nomerge') ('ebuild', '/', 'sys-fs/udev-124-r2', 'merge') pulled in by virtual/dev-manager required by world sys-fs/udev required by ('installed', '/', 'net-wireless/bluez-4.32', 'nomerge') sys-fs/udev required by ('installed', '/', 'sys-kernel/gentoo-sources-2.6.28-r1', 'nomerge') (and 4 more) ____ I chose acpi options in the kernel as you suggested, and at the moment, there is no message containing 'Error' left. How can I get a stacktrace? Only thing I get is > gdb /usr/sbin/hal GNU gdb 6.8 Copyright (C) 2008 Free Software Foundation, Inc. License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html> This is free software: you are free to change and redistribute it. There is NO WARRANTY, to the extent permitted by law. Type "show copying" and "show warranty" for details. This GDB was configured as "x86_64-pc-linux-gnu"... (no debugging symbols found) (gdb) run --daemon=no Starting program: /usr/sbin/hald --daemon=no (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) (no debugging symbols found) device udi = /org/freedesktop/Hal/devices/temp/98 linux.subsystem = 'tty' (string) linux.sysfs_path = '/sys/devices/platform/serial8250/tty/ttyS1' (string) info.parent = '/org/freedesktop/Hal/devices/platform_serial8250' (string) info.product = 'Platform Device (serial8250)' (string) serial.originating_device = '/org/freedesktop/Hal/devices/platform_serial8250' (string) serial.port = 1 0x1 (int) serial.type = 'platform' (string) serial.device = '/dev/ttyS1' (string) linux.device_file = '/dev/ttyS1' (string) info.category = 'serial' (string) info.subsystem = 'tty' (string) linux.hotplug_type = 2 0x2 (int) device udi = /org/freedesktop/Hal/devices/temp/99 linux.subsystem = 'tty' (string) linux.sysfs_path = '/sys/devices/platform/serial8250/tty/ttyS2' (string) info.parent = '/org/freedesktop/Hal/devices/platform_serial8250' (string) info.product = 'Platform Device (serial8250)' (string) serial.originating_device = '/org/freedesktop/Hal/devices/platform_serial8250' (string) serial.port = 2 0x2 (int) serial.type = 'platform' (string) serial.device = '/dev/ttyS2' (string) linux.device_file = '/dev/ttyS2' (string) info.category = 'serial' (string) info.subsystem = 'tty' (string) linux.hotplug_type = 2 0x2 (int) device udi = /org/freedesktop/Hal/devices/temp/100 linux.subsystem = 'tty' (string) linux.sysfs_path = '/sys/devices/platform/serial8250/tty/ttyS3' (string) info.parent = '/org/freedesktop/Hal/devices/platform_serial8250' (string) info.product = 'Platform Device (serial8250)' (string) serial.originating_device = '/org/freedesktop/Hal/devices/platform_serial8250' (string) serial.port = 3 0x3 (int) serial.type = 'platform' (string) serial.device = '/dev/ttyS3' (string) linux.device_file = '/dev/ttyS3' (string) info.category = 'serial' (string) info.subsystem = 'tty' (string) linux.hotplug_type = 2 0x2 (int) device udi = /org/freedesktop/Hal/devices/temp/84 linux.subsystem = 'usb' (string) hiddev.product = 'Logitech USB Receiver' (string) linux.sysfs_path = '/sys/devices/pci0000:00/0000:00:1d.7/usb2/2-5/2-5.2/2-5.2:1.1/usb/hiddev0' (string) info.parent = '/org/freedesktop/Hal/devices/usb_device_46d_c51b_noserial_if1' (string) info.product = 'Logitech USB Receiver' (string) info.category = 'hiddev' (string) hiddev.device = '/dev/usb/hiddev0' (string) info.subsystem = 'usb' (string) linux.device_file = '/dev/usb/hiddev0' (string) linux.hotplug_type = 2 0x2 (int) *** [DIE] hald_runner.c:runner_died():202 : Runner died Program exited with code 01. (gdb) bt No stack. > - You have amd64, ~amd64, ~x86 in your acceptable keywords. You sometimes will > pull in packages which are known not to be ready on amd64 yet. Are you sure I could pull packages which are 'known not to be ready'?? Then they should be masked, IMHO. I thought I could pull packages which are not known to be ready, this makes a big difference.
Ok, this seems to be a problem with glib compiled with gcc-4.4. When I change my CFLAGS from -O3 to -O2 when compiling glib, hal runs fine. I will leave my CFLAGS to that setting now :-)
(In reply to comment #7) > Ok, > > this seems to be a problem with glib compiled with gcc-4.4. > When I change my CFLAGS from -O3 to -O2 when compiling glib, hal runs fine. > > I will leave my CFLAGS to that setting now :-) > I can confirm that. I had a similar error. Remerging glib with -O2 fixes this.