HAL 0.5.4 and KDE 3.4.3 problem with DVD's

Roderick Greening roderick_greening at hotmail.com
Mon Oct 24 15:45:59 PDT 2005


Hi,

I have UDEV 070-r1, HAL 0.5.4, IVMAN 0.6.4, DBUS 0.36.2, PMOUNT 0.9.3-r3 and 
KDE 3.4.3 (kdebase-kioslaves) installed on a Gentoo system, and compiled 
with HAL support enabled.

Everything seems to work as expected, except that KDE doesn't seem to 
recognize any DVD's I insert (i.e. isn't accessible via storage devices and 
doesn't place an icon on the desktop), eventhough they mount under 
/media/hdc and are accessible from the command line. I expect it may be an 
issue with HAL and KDE interaction, but not sure if it's HAL or KDE 
specifically. Anyone have any suggestions as to how I can determine what's 
broken and how to go about fixing it?

As well, I was wondering how come HAL mounts anything in my DVDROM (CR-R, 
DVD-R, etc) under /media/hdc rather than using the /media/cdrom and 
/media/dvdrw like it used to under a previous version which used FSTAB-SYNC? 
Is there a way to get this functionality back or is it no longer preferred? 
UDEV still makes the symbolic links for human readability, so I would think 
that HAL would use the UDEV generated links if available.

Here's the console output of HAL:

17612: 20:08:43.789: addon-storage.c:316: Media insertion detected on 
/dev/hdc
20:08:43.791 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/storage_model_QSI_CD_RW/DVD_ROM_SBW242C 
interface=org.freedesktop.Hal.Device method=Rescan
20:08:43.791 [I] hald_dbus.c:2087: entering, local_interface=1
20:08:43.791 [D] hald_dbus.c:2096: 
udi=/org/freedesktop/Hal/devices/storage_model_QSI_CD_RW/DVD_ROM_SBW242C
20:08:43.791 [I] blockdev.c:1217: Entering, 
udi=/org/freedesktop/Hal/devices/storage_model_QSI_CD_RW/DVD_ROM_SBW242C
18122: 20:08:43.792: probe-storage.c:143: Doing probe-storage for /dev/hdc 
(bus ide) (drive_type cdrom) 
(udi=/org/freedesktop/Hal/devices/storage_model_QSI_CD_RW/DVD_ROM_SBW242C) 
(--only-check-for-fs==1)
18122: 20:08:43.793: probe-storage.c:310: Checking for optical disc on 
/dev/hdc
18122: 20:08:43.793: probe-storage.c:318: Doing open ("/dev/hdc", O_RDONLY | 
O_NONBLOCK | O_EXCL)
20:08:43.793 [I] hald_dbus.c:3002: 17584: Got a connection
20:08:43.793 [I] hald_dbus.c:3003: dbus_connection_get_is_connected = 1
20:08:43.798 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=(null) obj_path=/org/freedesktop/DBus/Local 
interface=org.freedesktop.DBus.Local method=Disconnected
20:08:43.798 [I] hald_dbus.c:2980: Client to local_server was disconnected
20:08:43.798 [I] hald_dbus.c:2990: unregistered
20:08:43.800 [I] util.c:554: child exited for pid 18122
20:08:43.800 [I] blockdev.c:1175: hald-probe-storage --only-check-for-media 
returned 2 (timed_out=0)
20:08:43.800 [I] blockdev.c:547: block_add: 
sysfs_path=/sys/block/hdc/fakevolume dev=/dev/hdc is_part=1, 
parent=0x080cf8a0
20:08:43.800 [I] blockdev.c:557: Handling /dev/hdc as fakevolume - 
sysfs_path_real=/sys/block/hdc
18123: 20:08:43.803: probe-volume.c:340: Doing probe-volume for /dev/hdc
20:08:43.803 [I] hald_dbus.c:3002: 17584: Got a connection
20:08:43.803 [I] hald_dbus.c:3003: dbus_connection_get_is_connected = 1
18123: 20:08:43.894: probe-volume.c:348: volume.block_size = 2048
20:08:43.896 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyInteger
20:08:43.896 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.block_size
18123: 20:08:43.897: probe-volume.c:352: volume.size = 3784343552
20:08:43.897 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyInteger
20:08:43.897 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.size
20:08:43.898 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyString
20:08:43.898 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.disc.type
20:08:43.901 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyBoolean
20:08:43.901 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.disc.has_audio
20:08:43.902 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyBoolean
20:08:43.902 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.disc.has_data
20:08:43.903 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyBoolean
20:08:43.903 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.disc.is_blank
20:08:43.904 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyBoolean
20:08:43.904 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.disc.is_appendable
20:08:43.905 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyBoolean
20:08:43.905 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.disc.is_rewritable
20:08:43.911 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyBoolean
20:08:43.912 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.disc.has_data
18123: 20:08:43.912: probe-volume.c:395: Disc in /dev/hdc has data
20:08:43.913 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyBoolean
20:08:43.913 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.disc.is_videodvd
20:08:43.914 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyBoolean
20:08:43.914 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.disc.is_vcd
20:08:43.915 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyBoolean
20:08:43.915 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.disc.is_svcd
18123: 20:08:44.010: probe-volume.c:415: get_disc_type returned 0x10
20:08:44.011 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyString
20:08:44.011 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=volume.disc.type
18123: 20:08:44.014: probe-volume.c:476: volume_session_count = 1
18123: 20:08:44.014: probe-volume.c:484: last session starts at block = 
4294967146
18123: 20:08:44.014: volume_id_probe_lvm1: probing at offset 0xfffb5000
18123: 20:08:44.014: volume_id_get_buffer: get buffer off 
0xfffb5400(4294661120), len 0x800
18123: 20:08:44.015: volume_id_get_buffer: read seekbuf off:0xfffb5400 
len:0x800
18123: 20:08:44.015: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.015: volume_id_probe_lvm2: probing at offset 0xfffb5000
18123: 20:08:44.015: volume_id_get_buffer: get buffer off 
0xfffb5000(4294660096), len 0x800
18123: 20:08:44.015: volume_id_get_buffer: read seekbuf off:0xfffb5000 
len:0x800
18123: 20:08:44.015: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.015: volume_id_probe_highpoint_37x_raid: probing at offset 
0xfffb5000
18123: 20:08:44.015: volume_id_get_buffer: get buffer off 
0xfffb6200(4294664704), len 0x200
18123: 20:08:44.016: volume_id_get_buffer: read seekbuf off:0xfffb6200 
len:0x200
18123: 20:08:44.016: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.016: volume_id_get_buffer: get buffer off 
0xfffb5000(4294660096), len 0x2
18123: 20:08:44.016: volume_id_get_buffer: read seekbuf off:0xfffb5000 
len:0x2
18123: 20:08:44.016: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.016: volume_id_probe_vfat: probing at offset 0xfffb5000
18123: 20:08:44.016: volume_id_get_buffer: get buffer off 
0xfffb5000(4294660096), len 0x200
18123: 20:08:44.016: volume_id_get_buffer: read seekbuf off:0xfffb5000 
len:0x200
18123: 20:08:44.017: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.017: volume_id_probe_xfs: probing at offset 0xfffb5000
18123: 20:08:44.017: volume_id_get_buffer: get buffer off 
0xfffb5000(4294660096), len 0x200
18123: 20:08:44.017: volume_id_get_buffer: read seekbuf off:0xfffb5000 
len:0x200
18123: 20:08:44.017: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.017: volume_id_get_buffer: get buffer off 0x0(0), len 
0x11000
18123: 20:08:44.017: volume_id_get_buffer: read sbbuf len:0x11000
18123: 20:08:44.064: volume_id_get_buffer: got 0x11000 (69632) bytes
18123: 20:08:44.064: volume_id_probe_linux_swap: probing at offset 
0xfffb5000
18123: 20:08:44.064: volume_id_get_buffer: get buffer off 
0xfffb5ff6(4294664182), len 0xa
18123: 20:08:44.064: volume_id_get_buffer: read seekbuf off:0xfffb5ff6 
len:0xa
18123: 20:08:44.065: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.065: volume_id_probe_ext: probing at offset 0xfffb5000
18123: 20:08:44.065: volume_id_get_buffer: get buffer off 
0xfffb5400(4294661120), len 0x200
18123: 20:08:44.065: volume_id_get_buffer: read seekbuf off:0xfffb5400 
len:0x200
18123: 20:08:44.065: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.065: volume_id_probe_reiserfs: probing at offset 0xfffb5000
18123: 20:08:44.065: volume_id_get_buffer: get buffer off 
0xfffc5000(4294725632), len 0x200
18123: 20:08:44.065: volume_id_get_buffer: read seekbuf off:0xfffc5000 
len:0x200
18123: 20:08:44.066: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.066: volume_id_probe_jfs: probing at offset 0xfffb5000
18123: 20:08:44.066: volume_id_get_buffer: get buffer off 
0xfffbd000(4294692864), len 0x200
18123: 20:08:44.066: volume_id_get_buffer: read seekbuf off:0xfffbd000 
len:0x200
18123: 20:08:44.066: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.066: volume_id_probe_udf: probing at offset 0xfffb5000
18123: 20:08:44.066: volume_id_get_buffer: get buffer off 
0xfffbd000(4294692864), len 0x200
18123: 20:08:44.066: volume_id_get_buffer: read seekbuf off:0xfffbd000 
len:0x200
18123: 20:08:44.067: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.067: volume_id_probe_iso9660: probing at offset 0xfffb5000
18123: 20:08:44.067: volume_id_get_buffer: get buffer off 
0xfffbd000(4294692864), len 0x200
18123: 20:08:44.067: volume_id_get_buffer: read seekbuf off:0xfffbd000 
len:0x200
18123: 20:08:44.067: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.067: volume_id_probe_hfs_hfsplus: probing at offset 
0xfffb5000
18123: 20:08:44.067: volume_id_get_buffer: get buffer off 
0xfffb5400(4294661120), len 0x200
18123: 20:08:44.067: volume_id_get_buffer: read seekbuf off:0xfffb5400 
len:0x200
18123: 20:08:44.067: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.068: volume_id_probe_ufs: probing at offset 0xfffb5000
18123: 20:08:44.068: volume_id_get_buffer: get buffer off 
0xfffb5000(4294660096), len 0x800
18123: 20:08:44.068: volume_id_get_buffer: read seekbuf off:0xfffb5000 
len:0x800
18123: 20:08:44.068: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.068: volume_id_probe_ntfs: probing at offset 0xfffb5000
18123: 20:08:44.068: volume_id_get_buffer: get buffer off 
0xfffb5000(4294660096), len 0x200
18123: 20:08:44.068: volume_id_get_buffer: read seekbuf off:0xfffb5000 
len:0x200
18123: 20:08:44.068: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.069: volume_id_probe_cramfs: probing at offset 0xfffb5000
18123: 20:08:44.069: volume_id_get_buffer: get buffer off 
0xfffb5000(4294660096), len 0x200
18123: 20:08:44.069: volume_id_get_buffer: read seekbuf off:0xfffb5000 
len:0x200
18123: 20:08:44.069: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.069: volume_id_probe_romfs: probing at offset 0xfffb5000
18123: 20:08:44.069: volume_id_get_buffer: get buffer off 
0xfffb5000(4294660096), len 0x200
18123: 20:08:44.069: volume_id_get_buffer: read seekbuf off:0xfffb5000 
len:0x200
18123: 20:08:44.069: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.070: volume_id_probe_hpfs: probing at offset 0xfffb5000
18123: 20:08:44.070: volume_id_get_buffer: get buffer off 
0xfffb7000(4294668288), len 0x200
18123: 20:08:44.070: volume_id_get_buffer: read seekbuf off:0xfffb7000 
len:0x200
18123: 20:08:44.070: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.070: volume_id_probe_sysv: probing at offset 0xfffb5000
18123: 20:08:44.070: volume_id_get_buffer: get buffer off 
0xfffb5200(4294660608), len 0x200
18123: 20:08:44.070: volume_id_get_buffer: read seekbuf off:0xfffb5200 
len:0x200
18123: 20:08:44.070: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.070: volume_id_probe_minix: probing at offset 0xfffb5000
18123: 20:08:44.071: volume_id_get_buffer: get buffer off 
0xfffb5400(4294661120), len 0x200
18123: 20:08:44.071: volume_id_get_buffer: read seekbuf off:0xfffb5400 
len:0x200
18123: 20:08:44.071: volume_id_get_buffer: lseek failed (Invalid argument)
18123: 20:08:44.071: volume_id_probe_ocfs2: probing at offset 0xfffb5000
18123: 20:08:44.071: volume_id_get_buffer: get buffer off 
0xfffb7000(4294668288), len 0x200
18123: 20:08:44.071: volume_id_get_buffer: read seekbuf off:0xfffb7000 
len:0x200
18123: 20:08:44.071: volume_id_get_buffer: lseek failed (Invalid argument)
20:08:44.072 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=org.freedesktop.Hal 
obj_path=/org/freedesktop/Hal/devices/temp/106 
interface=org.freedesktop.Hal.Device method=SetPropertyString
20:08:44.072 [D] hald_dbus.c:1191: 
udi=/org/freedesktop/Hal/devices/temp/106, key=info.product
20:08:44.073 [I] hald_dbus.c:2964: local_server_message_handler: 
destination=(null) obj_path=/org/freedesktop/DBus/Local 
interface=org.freedesktop.DBus.Local method=Disconnected
20:08:44.073 [I] hald_dbus.c:2980: Client to local_server was disconnected
20:08:44.073 [I] hald_dbus.c:2990: unregistered
20:08:44.074 [I] util.c:554: child exited for pid 18123
20:08:44.074 [I] blockdev.c:281: entering; timed_out=0, return_code=0
20:08:44.074 [I] blockdev.c:179: Update mount point for 
/org/freedesktop/Hal/devices/volume_part_1_size_3784343552 (device_file 
/dev/hdc)
20:08:44.074 [I] blockdev.c:208: Clearing mount point for /dev/hdc
20:08:44.077 [I] blockdev.c:139: Add callouts completed 
udi=/org/freedesktop/Hal/devices/volume_part_1_size_3784343552
20:08:44.077 [I] hald.c:89: Added device to GDL; 
udi=/org/freedesktop/Hal/devices/volume_part_1_size_3784343552
20:08:49.997 [I] osspec.c:243: total_read=18 buf='umount@/block/hdc'
20:08:49.997 [I] blockdev.c:220: mount_status_changed for '/sys/block/hdc', 
is_mounted=0
20:08:49.997 [I] blockdev.c:234: Applies to 
/org/freedesktop/Hal/devices/volume_part_1_size_3784343552
20:08:49.997 [I] blockdev.c:179: Update mount point for 
/org/freedesktop/Hal/devices/volume_part_1_size_3784343552 (device_file 
/dev/hdc)
20:08:49.997 [I] blockdev.c:208: Clearing mount point for /dev/hdc
20:08:50.077 [I] osspec.c:243: total_read=17 buf='mount@/block/hdc'
20:08:50.077 [I] blockdev.c:220: mount_status_changed for '/sys/block/hdc', 
is_mounted=1
20:08:50.077 [I] blockdev.c:234: Applies to 
/org/freedesktop/Hal/devices/volume_part_1_size_3784343552
20:08:50.077 [I] blockdev.c:179: Update mount point for 
/org/freedesktop/Hal/devices/volume_part_1_size_3784343552 (device_file 
/dev/hdc)
20:08:50.080 [I] blockdev.c:198: Setting mount point /media/hdc for /dev/hdc

And here's the relevant section from lshal:

udi = '/org/freedesktop/Hal/devices/volume_part_1_size_3784343552'
  info.udi = '/org/freedesktop/Hal/devices/volume_part_1_size_3784343552'  
(string)
  info.product = 'Volume'  (string)
  volume.disc.is_svcd = false  (bool)
  volume.disc.is_vcd = false  (bool)
  volume.disc.is_videodvd = false  (bool)
  volume.disc.is_appendable = false  (bool)
  volume.disc.is_blank = false  (bool)
  volume.disc.has_data = true  (bool)
  volume.disc.has_audio = false  (bool)
  volume.disc.type = 'dvd_rom'  (string)
  volume.size = 3784343552  (0xe1908000)  (uint64)
  volume.num_blocks = 7391296  (0x70c840)  (int)
  volume.block_size = 2048  (0x800)  (int)
  info.capabilities = {'volume', 'block'} (string list)
  info.category = 'volume'  (string)
  volume.is_partition = true  (bool)
  volume.is_disc = true  (bool)
  volume.is_mounted = true  (bool)
  volume.mount_point = '/media/hdc'  (string)
  volume.label = ''  (string)
  volume.uuid = ''  (string)
  volume.fsversion = ''  (string)
  volume.fsusage = ''  (string)
  volume.fstype = ''  (string)
  block.storage_device = 
'/org/freedesktop/Hal/devices/storage_model_QSI_CD_RW/DVD_ROM_SBW242C'  
(string)
  block.is_volume = true  (bool)
  block.minor = 0  (0x0)  (int)
  block.major = 22  (0x16)  (int)
  block.device = '/dev/hdc'  (string)
  linux.hotplug_type = 3  (0x3)  (int)
  info.parent = 
'/org/freedesktop/Hal/devices/storage_model_QSI_CD_RW/DVD_ROM_SBW242C'  
(string)
  linux.sysfs_path_device = '/sys/block/hdc/fakevolume'  (string)
  linux.sysfs_path = '/sys/block/hdc/fakevolume'  (string)

Thanks to anyone who can help.

Rod.




More information about the hal mailing list