/media/.hal-mtab is not cleaned when hald is started. Therefore, it may still contain old entries from before a system crash, for example. This may lead to hal thinking that mounted devices belong to user A, which in turn leads to the impossibility for user B to umount this very device, although it was mounted by user B.
In that state, /media/.hal-mtab looks like this: (user 1000 can't umount although it mounted the device (in kde, umounting results in the following error: "hal-storage-can-unmount-volumes-mounted-by-others refused uid 1000"))
/media/.hal-mtab is not cleaned when hald is started. Therefore, it may still contain old entries from before a system crash, for example. This may lead to hal thinking that mounted devices belong to user A, which in turn leads to the impossibility for user B to umount this very device, although it was mounted by user B.
In that state, /media/.hal-mtab looks like this: (user 1000 can't umount although it mounted the device (in kde, umounting results in the following error: "hal-storage- can-unmount- volumes- mounted- by-others refused uid 1000"))
/dev/sdb1 1001 0 vfat noexec, nosuid, nodev,uid= 1001,noatime, utf8,shortname= lower /media/LACIE
/dev/sdb1 1000 0 vfat nosuid, nodev,flush, uid=1000, noatime, utf8,shortname= lower /media/disk
Maybe the file should be deleted when starting hald? Or a check should occur when writing to the file whether the device is set already as mounted.