Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 158910

Summary: hal-0.5.7.1-r2 and kdebase-kioslaves-3.5.5-r1 - media kioslave interoperate incorrectly while mounting usb-flash
Product: Gentoo Linux Reporter: Slava Gorbunov <slava>
Component: Current packagesAssignee: Project Gentopia <gentopia>
Status: RESOLVED TEST-REQUEST    
Severity: normal CC: kde
Priority: High    
Version: 2006.1   
Hardware: x86   
OS: Linux   
Whiteboard:
Package list:
Runtime testing required: ---

Description Slava Gorbunov 2006-12-23 05:42:28 UTC
hal-0.5.7.1-r2
kdebase-kioslaves-3.5.5-r1
When usb flash disk is attached, it appears in kde's "media:/" directory. When you try to view contents of the flash disk, you see empty list, despite that it was correctly mounted by hal to /media/disk0.

The reason is that kde calls 'Mount' hal method, then checks that volume was correctly mounted by inspecting 'volume.is_mounted' property, then (if everything is OK) aquires assigned mount point from 'volume.mount_point' property. But hal, when executing 'Mount' method (by invoking hal-system-storage-mount script), dones't modify 'volume.is_mounted' and 'volume.mount_point'. Instead, it only sets 'info.hal_mount.created_mount_point' to assigned mount point. Modifying hal-system-storage-mount in such way that it changes 'volume.is_mounted' and 'volume.mount_point' solves problem with mounting. But there is another problem with unmounting: when unmounting volume, property 'volume.is_mounted' is not unset, so KDE doesn't know that device is unmounted (it appears that it doesn't use hal method for unmounting).
Comment 1 Doug Goldstein (RETIRED) gentoo-dev 2006-12-23 09:10:07 UTC
works for me.... I just tried it on my desktop. the volume.* properties will be set by HAL themselves when it reprobes once you've mounted the device since it will inform HAL of a change. The script should not be setting those values.
Comment 2 Slava Gorbunov 2006-12-23 09:28:26 UTC
(In reply to comment #1)
> works for me.... I just tried it on my desktop. the volume.* properties will be
> set by HAL themselves when it reprobes once you've mounted the device since it
> will inform HAL of a change. The script should not be setting those values.

May be there is some problems with specific version of hal? It doesn't update volume.is_mounted and volume.mount_point after mount/umount (but updates them after restart). I have tried to run hald in foreground with enabled verbose output, and it printed these messages during mount/umount:

mount:
20:22:00.550 [I] osspec.c:232: SEQNUM=2152, ACTION=umount, SUBSYSTEM=block, DEVPATH=/sys/block/sda/sda1, DEVNAME=, IFINDEX=0
20:22:00.621 [I] osspec.c:232: SEQNUM=2153, ACTION=umount, SUBSYSTEM=block, DEVPATH=/sys/block/sda/sda1, DEVNAME=, IFINDEX=0
20:22:00.661 [I] osspec.c:232: SEQNUM=2154, ACTION=mount, SUBSYSTEM=block, DEVPATH=/sys/block/sda/sda1, DEVNAME=, IFINDEX=0

umount:
20:22:27.223 [I] osspec.c:232: SEQNUM=2155, ACTION=umount, SUBSYSTEM=block, DEVPATH=/sys/block/sda/sda1, DEVNAME=, IFINDEX=0

The device was mounted with pmount.
Comment 3 Doug Goldstein (RETIRED) gentoo-dev 2007-01-30 16:24:54 UTC
Be specific about version numbers. Also try the latest versions available. The versions in the subject are old.