Description of problem: I'm running the current rawhide (including the gnome-vfs2 update last night) and I'm seeing weirdnesses with regard to the display of mounted drives. The device (for example CD-RW/DVD+_R Drive) appears in Computer, along with the Disk Mounter applet, but when I stick media in the device the disk mounts but neither Computer or the Disk Mounter applet show the device as mounted. Right clicking on the device in Computer shows 'Mount Volume' and clicking on the device in the Disk Mounter applet shows 'Mount CD-RW/DVD+_R Drive' Also, no icon appears on the desktop for the drive. If I select 'Mount Volume' or 'Mount CD-RW/DVD+_R Drive' from their respective places I get the following output. ------------------------------------------------------------------- Unable to mount the selected volume. v Show more details mount: block device /dev/hdc is write-protected, mounting read-only mount: /dev/hdc already mounted or /media/cdrecorder busy mount: according to mtab, /dev/hdc is already mounted on / media/cdrecorder [ OK ] ------------------------------------------------------------------- A quick look at df -h shows: [rodd@localhost ~]$ df -h Filesystem Size Used Avail Use% Mounted on /dev/sda9 9.5G 5.0G 4.1G 55% / /dev/shm 506M 0 506M 0% /dev/shm /dev/sda6 29G 14G 14G 50% /home /dev/sda7 7.6G 318M 6.9G 5% /var/www /dev/hdc 5.6G 5.6G 0 100% /media/cdrecorder and I can access the DVD from the command line (or even using CTRL-L on the desktop or in a FileChooser), but gnome doesn't seem to be detecting it properly. Finally, the disk in the drive is a DVD. When I open Totem and click File I see the DVD drive as an option to play. However, when I click on the option, I get the following dialog: ------------------------------------------------------------------- Failed to play Audio/Video Disc Failed to find mountpoint for device /dev/hdc in /etc/fstab [ OK ] ------------------------------------------------------------------- but a quick look at /etc/fstab shows: # This file is edited by fstab-sync - see 'man fstab-sync' for details LABEL=/1 / ext3 defaults 1 1 /dev/devpts /dev/pts devpts gid=5,mode=620 0 0 /dev/shm /dev/shm tmpfs defaults 0 0 LABEL=/home /home ext3 defaults 1 2 /dev/proc /proc proc defaults 0 0 /dev/sys /sys sysfs defaults 0 0 LABEL=/var /var/www ext3 defaults 1 2 LABEL=SWAP-sda8 swap swap defaults 0 0 /dev/hdc /media/cdrecorder auto pamconsole,exec,noauto,managed 0 0 Something is not right with all this. Version-Release number of selected component (if applicable): gnome-vfs2-2.12.1.1-1 totem-1.1.4-1 Additional info: If I insert a USB key I get similar problems. Strangely Computer and Disk Mounter show that the device exists, but neither show is as mounted (is it) and both offer to mount it. I get this error message when trying to mount it: ------------------------------------------------------------------- Unable to mount the selected volume. v Show more details mount: /dev/sdb1 already mounted or /media/usbdisk busy mount: according to mtab, /dev/sdb1 is already mounted on / media/usbdisk [ OK ] -------------------------------------------------------------------
Here's an interesting twist. I've put two disks into my DVD/CD drive since starting my system (rebooted this morning after updating to current rawhide) and now I've got three instances of CD-RW/DVD+_R Drive in computer (see attached screenshot). They all claim that the drive isn't mounted (it is) and give the error message above when trying to mount. Eject however worked to get the disk out of the drive. the drive-mount applet shows three instances of the drive to, but saw all of them as unmounted.
Created attachment 120118 [details] Computer window showing three copies of CD-RW/DVD+_R Drive
Hmm, also worth mentioning that there's three of these in the file chooser too, but fstab only shows the following: # This file is edited by fstab-sync - see 'man fstab-sync' for details LABEL=/1 / ext3 defaults 1 1 /dev/devpts /dev/pts devpts gid=5,mode=620 0 0 /dev/shm /dev/shm tmpfs defaults 0 0 LABEL=/home /home ext3 defaults 1 2 /dev/proc /proc proc defaults 0 0 /dev/sys /sys sysfs defaults 0 0 LABEL=/var /var/www ext3 defaults 1 2 LABEL=SWAP-sda8 swap swap defaults 0 0 /dev/hdc /media/cdrecorder auto pamconsole,exec,noauto,managed 0 0 /etc/fstab (END)
I see Oct 22 16:37:53 c-24-63-5-111 udevd[674]: get_netlink_msg: no ACTION in payload found, skip event 'mount' in the logs when mounting a cd. Does that point to udevd as the culprit ?
I dont think this is a problem of gnome-vfs. My guess is that hal/udev/dbus or some other lower layer part is broken (I dont know enough of these new tools) because the same problem exists in kde 3.5beta1 (latest rawhide release) and 3.5beta2 (self-built rpms based on rawhide specs). dbus-qt is installed and hal support activated in kde.
Just wanted to update this bug with some information. This bug is triggered because netlink tells hal that the volume is mounted, however /proc/mounts has not yet been updated. This race condition seems to be a by-product of having pre-emption of any sort turned on in the kernel. Full preemption seems better behaved than Voluntary, however both have issues. I have worked around this issue two ways. First: re-compile the kernel without preemption Second: added a half second sleep before update_mount_point is called in blockdev_mount_status_changed of hal's blockdev.c after figuring this out I did find some other references on both the kernel and hal mailing lists to this same problem.
Finally sorting this all out here is the rundown. The original problem in this report is in fact a gnome-vfs2 bug. When the cdrom is mounting the HAL exposes the drive with a volume udi of '/org/freedesktop/Hal/devices/temp'. This causes gnome-vfs2 to delete the drive without volumes and then add a drive with volumes, but because the volume isn't real doesn't create a volume for it. Once the volume discovery is done gnome-vfs2 adds another volume creating another drive and then binds the real volume to it. I brought this up on the hal list and they said since gnome-vfs2 is using their own hal discovery code that it was a bug in gnome-vfs2 and not hal. Looking at it I see that gnome-vfs2 uses their own discovery code in order to handle blank cd's and audio. My proposed solution... on _hal_add_volume test the volume udi and if it matches /org/freedesktop/Hal/devices/temp bail. This is an internal udi to hal and shouldn't be acted upon by an external program. I will post my first patch here so we can hopefully test it out.
Created attachment 120390 [details] patch to fix multiple cdrom's showing up in nautilus
Has this been applied, and released into rawhide? If so then I'm not seeing any improvements today. My USB key (for example) mounts, but neither appears in computer or on the desktop.
Apparenlty there has been some discussion on the HAL list. It would be worthwhile to check that out.
It seems to be working for me now with yesterdays rawhide. No idea if something was fixed in the kernel or what, but after rebooting, my cdrom appeared...
I'm seeing the icons for my USB key too, but... * there's no icon on the desktop. * the icons in computer and disk-mounter-applet think the device is unmounted * the icon in the file-chooser can't mount the device
My pen drives just report as being read only media. Very annoying. Blank CDs and DVDs show on the desktop, but only about 1 in 10 data discs show when I put them in the drive. Zip discs still don't show.
I built a new hal rpm from cvs 20051102 for me and now kde works without any problems. So my comment #5 above is obsolete.
I built a new hal rpm from cvs 20051102 for me and now kde works without any problems. So my guess in comment #5 above was correct in my case.
I think the original issue with this (the gnome-vfs multi-cd issue) has been fixed now. I'm closing this for now, report any other/new issues separately.
As per comment 16 - closing this bug