GNOME Bugzilla – Bug 158672
HAL backend for GnomeVFSVolumeMonitor doesn't associate multiple partitions with the same GnomeVFSDrive
Last modified: 2006-07-14 18:47:43 UTC
From my reading of the gnome-vfs code and documentation, GnomeVFSDrives are meant to represent physical drives on the system, and GnomeVFSVolumes represent mounted partitions on those drives (in the case of a drive with no partitioning, you'd get a single volume on the drive). This problem exists with both the support existing in Gnome-VFS currently, and with the following patch from David Zeuthen: http://lists.gnome.org/archives/gnome-vfs-list/2004-September/msg00066.html (It appears that this patch was applied in the Fedora Core 3 packages, which is why I tried it too). Without the above patch, the output of test/test-volumes (modified to print HAL UDI paths) on my system is: Mounted volumes: vol(0x53ccd0)[dev: /dev/sdb1, mount: file:///media/KINGSTON, device type: 3, handles_trash: 1, icon: gnome-dev-harddisk-usb, name: KINGSTON, user_visible: 1, drive: 0x53c6e0, udi: /org/freedesktop/Hal/devices/block_163B-01E6] vol(0x53c060)[dev: /dev/sda1, mount: file:///boot, device type: 3, handles_trash: 1, icon: gnome-dev-harddisk, name: Linux Disk, user_visible: 0, drive: 0x53c5b0, udi: /org/freedesktop/Hal/devices/block_8_1] vol(0x53bef0)[dev: /dev/sda5, mount: file:///, device type: 3, handles_trash: 1, icon: gnome-dev-harddisk, name: Linux Disk (2), user_visible: 0, drive: 0x53c480, udi: /org/freedesktop/Hal/devices/block_8_5] vol(0x53bda0)[dev: /dev/sda8, mount: file:///home, device type: 3, handles_trash: 1, icon: gnome-dev-harddisk, name: Linux Disk (3), user_visible: 0, drive: 0x53c350, udi: /org/freedesktop/Hal/devices/block_8_8] Connected drives: drive(0x53c6e0)[dev: /dev/sdb1, mount: file:///media/KINGSTON, device type: 3, icon: gnome-dev-removable-usb, name: DataTraveler2.0, user_visible: 1, volume: 0x53ccd0, udi: /org/freedesktop/Hal/devices/block_163B-01E6] drive(0x53c5b0)[dev: /dev/sda1, mount: file:///boot, device type: 3, icon: gnome-dev-removable, name: WDC WD740GD-00FL, user_visible: 0, volume: 0x53c060, udi: /org/freedesktop/Hal/devices/block_8_1] drive(0x53c480)[dev: /dev/sda5, mount: file:///, device type: 3, icon: gnome-dev-removable, name: WDC WD740GD-00FL (2), user_visible: 0, volume: 0x53bef0, udi: /org/freedesktop/Hal/devices/block_8_5] drive(0x53c350)[dev: /dev/sda8, mount: file:///home, device type: 3, icon: gnome-dev-removable, name: WDC WD740GD-00FL (3), user_visible: 0, volume: 0x53bda0, udi: /org/freedesktop/Hal/devices/block_8_8] drive(0x53bac0)[dev: /dev/hda, mount: file:///media/cdrom0, device type: 4, icon: gnome-dev-removable, name: CD-RW/DVD?RW, user_visible: 1, volume: (nil), udi: /org/freedesktop/Hal/devices/block_3_0] With the patch applied I get the following: Mounted volumes: vol(0x53da80)[dev: sysfs, mount: file:///sys, device type: 3, handles_trash: 0, icon: gnome-dev-harddisk, name: sys, user_visible: 0, drive: (nil), udi: (nil)] vol(0x53d940)[dev: usbfs, mount: file:///proc/bus/usb, device type: 3, handles_trash: 0, icon: gnome-dev-harddisk, name: usb, user_visible: 0, drive: (nil), udi: (nil)] vol(0x53d800)[dev: proc, mount: file:///proc, device type: 3, handles_trash: 0, icon: gnome-dev-harddisk, name: proc, user_visible: 0, drive: (nil), udi: (nil)]vol(0x53d680)[dev: /dev/sdb1, mount: file:///media/KINGSTON, device type: 3, handles_trash: 1, icon: gnome-dev-harddisk-usb, name: KINGSTON, user_visible: 1, drive: (nil), udi: /org/freedesktop/Hal/devices/block_163B-01E6] vol(0x53d510)[dev: /dev/sda8, mount: file:///home, device type: 3, handles_trash: 1, icon: gnome-dev-harddisk, name: 53G Media, user_visible: 0, drive: (nil), udi: /org/freedesktop/Hal/devices/block_8_8] vol(0x53d3d0)[dev: tmpfs, mount: file:///dev/shm, device type: 3, handles_trash: 0, icon: gnome-dev-harddisk, name: shm, user_visible: 0, drive: (nil), udi: (nil)] vol(0x53c650)[dev: devpts, mount: file:///dev/pts, device type: 3, handles_trash: 0, icon: gnome-dev-harddisk, name: pts, user_visible: 0, drive: (nil), udi: (nil)] vol(0x53c510)[dev: none, mount: file:///dev, device type: 3, handles_trash: 0, icon: gnome-dev-harddisk, name: dev, user_visible: 0, drive: (nil), udi: (nil)] vol(0x53c3a0)[dev: /dev/sda1, mount: file:///boot, device type: 3, handles_trash: 1, icon: gnome-dev-harddisk, name: 254M Media, user_visible: 0, drive: (nil), udi: /org/freedesktop/Hal/devices/block_8_1] vol(0x53c260)[dev: rootfs, mount: file:///, device type: 3, handles_trash: 0, icon: gnome-dev-harddisk, name: Root Volume, user_visible: 0, drive: (nil), udi: (nil)] vol(0x53c160)[dev: /dev2/root2, mount: file:///, device type: 3, handles_trash: 1, icon: gnome-dev-harddisk, name: Root Volume (2), user_visible: 0, drive: (nil), udi: (nil)] Connected drives: drive(0x53c050)[dev: /dev/fd0, mount: file:///media/floppy0, device type: 5, icon: gnome-dev-removable, name: Floppy 1, user_visible: 1, volume: (nil), udi: (nil)] drive(0x53bd30)[dev: /dev/hda, mount: file:///media/cdrom0, device type: 4, icon: gnome-dev-removable, name: CD-RW/DVD?R Drive, user_visible: 1, volume: (nil), udi: /org/freedesktop/Hal/devices/block_3_0] Both behaviours seem wrong to me. The current CVS behaviour creates multiple GnomeVFSDrives for a single physical drive (one for each partition listed in /etc/fstab). With the patch applied, pretty much all the mounted volumes lacked a corresponding GnomeVFSDrive. Ideally, I'd expect GnomeVFSDrives for /dev/sda (the hard disk), /dev/sdb (the USB stick), /dev/hda (the cdrom) and /dev/fd0 (the floppy), and then have GnomeVFSVolumes for any mounted partitions on those devices. This would improve the user experience with multi-partition removable drives, so you can unmount all associated volumes before disconnecting it.
Thanks for the bug report. This particular bug has already been reported into our bug tracking system, but please feel free to report any further bugs you find. *** This bug has been marked as a duplicate of 319689 ***