After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 759952 - gvfs-mount cdda://sr0 fails
gvfs-mount cdda://sr0 fails
Status: RESOLVED OBSOLETE
Product: gvfs
Classification: Core
Component: cdda backend
1.24.x
Other Linux
: Normal normal
: ---
Assigned To: gvfs-maint
gvfs-maint
Depends on:
Blocks:
 
 
Reported: 2015-12-29 12:23 UTC by john.frankish@outlook.com
Modified: 2018-09-21 17:56 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
strace log (3.62 KB, application/x-gzip)
2016-01-01 07:41 UTC, john.frankish@outlook.com
Details

Description john.frankish@outlook.com 2015-12-29 12:23:06 UTC
Using gvfs-1.24.1, gvfs-mount fails to mount an audio cd, even though it has been compiled against libcdio-paranoia.

I can play an audio cd using gstreamer

Details below:

$ gvfs-mount cdda://sr0
Error mounting location: volume doesn't implement mount

$ gvfs-mount -d /dev/sr0
Error mounting /dev/sr0: mount: mounting /dev/sr0 on /mnt/sr0 failed: Input/output error

$ gvfs-mount -l
Volume(0): sda1
  Type: GUnixVolume
Volume(1): sda2
  Type: GUnixVolume
Volume(2): sda3
  Type: GUnixVolume
Volume(3): sdb1
  Type: GUnixVolume
  Mount(0): sdb1 -> file:///mnt/sdb1
    Type: GUnixMount
Volume(4): sdb2
  Type: GUnixVolume
Volume(5): sr0
  Type: GUnixVolume

$ ldd /usr/local/lib/gvfs/gvfsd-cdda | grep cd
        libbluray.so.1 => /usr/local/lib/libbluray.so.1 (0x00007fc616cdc000)
        libcdio_paranoia.so.2 => /usr/local/lib/libcdio_paranoia.so.2 (0x00007fc614a15000)
        libcdio_cdda.so.2 => /usr/local/lib/libcdio_cdda.so.2 (0x00007fc61480e000)
        libcdio.so.16 => /usr/local/lib/libcdio.so.16 (0x00007fc6145eb000)

$ gst-inspect-1.0 |grep -i cdda
cdparanoia:  cdparanoiasrc: CD Audio (cdda) Source, Paranoia IV

$ gst-launch-1.0 playbin uri=cdda://4 [this plays track 4 of an audio cd]
Comment 1 Ross Lagerwall 2015-12-29 17:24:17 UTC
I'm guessing you've compiled this locally since /usr/local paths are being used. Do you have a distro version installed as well? It sounds like it is trying to use the distro version of gvfs which doesn't have cdda compiled in.

To try to use the newly compiled version, can you try:
- kill any existing gvfs process
- start the main gvfs daemon manually: /usr/local/lib/gvfs/gvfsd
- export GVFS_MOUNTABLE_DIR=/usr/local/share/gvfs/mounts
- export GIO_EXTRA_MODULES=/usr/share/lib/gio/modules
- finally, run something like /usr/local/bin/gvfs-mount cdda://sr0

If you're using a regular distro, it may be possible to use its packaging format to overwrite the distro version of gvfs. Alternatively, take a look at jhbuild which helps in managing multiple environments of this sort.
Comment 2 john.frankish@outlook.com 2015-12-29 17:47:03 UTC
Thanks for the reply and yes, I compiled gvfs locally, but there is no distro version installed - this is the only version of gvfs present.

Just to confirm, gvfs was compiled as follows:

gvfs configuration summary:

        gio module directory : ${exec_prefix}/lib/gio/modules

        hotplug backend:              gudev

        Blu-ray metadata support:     yes
        HTTP/WebDAV support:          yes
        Samba support:                yes
        FUSE support:                 yes
        CDDA support:                 yes
        Gphoto2 support:              yes
        MTP support:                  no
        archive support:              yes
        AFC support:                  yes
        AFP support:                  yes
        NFS support:                  yes
        DNS-SD support:               yes
        Build HAL volume monitor:     no (with fast init path: no)
        Build GDU volume monitor:     no
        Build udisks2 volume monitor: yes
        Build GOA volume monitor:     yes
        Use libsystemd-login:         no
        GNOME Keyring support:        yes
        GTK+ support:                 yes
        Bash-completion support:      yes
        Installed tests:              no
Comment 3 Ross Lagerwall 2015-12-29 18:05:17 UTC
Is the main daemon (gvfsd) starting at all? It relies on dbus activation and normally puts files in /usr/share/dbus-1/services for dbus to autostart. If gvfs is installed to /usr/local/ then perhaps dbus cannot find the service files to autostart it.
Comment 4 john.frankish@outlook.com 2015-12-30 05:11:26 UTC
The gvfs daemon is auto-started by the gnome-3.16.x desktop:

$ ps aux | grep gvfs
17344 tc       /usr/local/lib/gvfs/gvfsd
17348 tc       /usr/local/lib/gvfs/gvfsd-fuse /home/tc/.gvfs -f -o big_writes
17459 tc       /usr/local/lib/gvfs/gvfs-udisks2-volume-monitor
17477 tc       /usr/local/lib/gvfs/gvfs-afc-volume-monitor
17482 tc       /usr/local/lib/gvfs/gvfs-goa-volume-monitor
17486 tc       /usr/local/lib/gvfs/gvfs-gphoto2-volume-monitor
17813 tc       /usr/local/lib/gvfs/gvfsd-trash --spawner :1.14 /org/gtk/gvfs/exec_spaw/0
Comment 5 john.frankish@outlook.com 2016-01-01 07:41:59 UTC
Created attachment 318112 [details]
strace log

Strace log attached, though it doesn't seem to show much..
Comment 6 john.frankish@outlook.com 2016-01-05 11:09:07 UTC
Is there anything I can try in terms of debugging?
Comment 7 Ondrej Holy 2016-01-05 13:23:14 UTC
I wonder why the disk is listed as GUnixVolume and why the drive is not listed.

I can see following with audio disk:

Drive(1): Optiarc DVD RW AD-7590S
  Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
  Volume(0): Audio Disc
    Type: GProxyVolume (GProxyVolumeMonitorUDisks2)
    Mount(0): Audio Disc -> cdda://sr0/
      Type: GProxyShadowMount (GProxyVolumeMonitorUDisks2)
Mount(0): Audio Disc -> cdda://sr0/
  Type: GDaemonMount

Don't you have some special fstab entry for the /dev/sr0?
Comment 8 john.frankish@outlook.com 2016-01-07 12:00:38 UTC
I don't think so:

$ cat /etc/fstab
# /etc/fstab
proc            /proc        proc    defaults          0       0
sysfs           /sys         sysfs   defaults          0       0
devpts          /dev/pts     devpts  defaults          0       0
tmpfs           /dev/shm     tmpfs   defaults          0       0
/dev/zram0  swap         swap    defaults,noauto   0       0
/dev/sda1       /mnt/sda1       vfat     noauto,users,exec,umask=000 0 0 # Added by TC
/dev/sda2       /mnt/sda2       ntfs     noauto,users,exec,ro,umask=000 0 0 # Added by TC
/dev/sda3       /mnt/sda3       ntfs     noauto,users,exec,ro,umask=000 0 0 # Added by TC
/dev/sdb1       /mnt/sdb1       ext4     noauto,users,exec    0 0 # Added by TC
/dev/sdb2       /mnt/sdb2       vfat     noauto,users,exec,umask=000 0 0 # Added by TC
/dev/sr0        /mnt/sr0        auto     noauto,users,exec    0 0 # Added by TC
Comment 9 Ondrej Holy 2016-01-07 15:28:21 UTC
Following line is exactly what I am talking about:
/dev/sr0        /mnt/sr0        auto     noauto,users,exec    0 0 # Added by TC

This is probably the reason why it isn't correctly recognized by gvfs and automounted. Remove the line from the fstab and it should work properly (restart the computer after that for sure).

I just wonder why it is there... what is "TC"?
Comment 10 john.frankish@outlook.com 2016-01-08 04:30:54 UTC
If I delete the "/dev/sr0" line from /etc/fstab it does not change anything unfortunately.

"TC" is the distro - tinycorelinux - the "/dev/sr0" line is added (by udev, I presume) to /etc/fstab as soon as the external cd/dvd drive is attached.

/etc/fstab is rebuilt on boot, so editing it would not make a permanent change anyway.
Comment 11 john.frankish@outlook.com 2016-01-13 05:53:21 UTC
Any other suggestions?
Comment 12 Ondrej Holy 2016-01-13 12:54:38 UTC
I am afraid it is caused by some distro-specific modifications (fstab, udev...), but do not have time to investigate it deeply. This is question rather for tinycorelinux related forum. It seems that gvfs was being included in the tinycorelinux repository (3.x), but it isn't nowadays, so maybe there is some reason for it...
Comment 13 john.frankish@outlook.com 2016-01-13 13:31:41 UTC
gvfs has been included in the 64-bit tinycore (corepure64) repo since 5.x, though if it doesn't work maybe I need to remove it...

Does gvfs have a run-time dep on systemd?
Comment 14 Ondrej Holy 2016-01-13 13:50:09 UTC
As far as I know there isn't runtime dependency on systemd. Systemd user services were added into the GVfs quite recently, however it shouldn't break anything on non-systemd system (see Bug 755760 and Bug 760293).
Comment 15 john.frankish@outlook.com 2016-01-13 13:57:12 UTC
Hmmm - and hopefully gvfs doesn't need the udev hardware database.

What I don't understand is why, as fstab/udev have not mounted the cd/dvd drive, gvfs cannot access it - especially as gstreamer and xmms have no problems.
Comment 16 Ondrej Holy 2016-01-13 14:30:13 UTC
I am just guessing, however udisks2volumemonitor is based udisks2, which is based on udev, so if there are some inappropriate changes in udev, or udev database is missing, so consequently udisks2 can't recognize drives/volumes and consequently gvfs can't mount audiocd...
Comment 17 john.frankish@outlook.com 2016-01-15 08:13:40 UTC
I compiled the latest udisks and had a look.

The system sees the cd/dvd drive:

usb 2-1: new high-speed USB device number 4 using xhci_hcd
usb-storage 2-1:1.0: USB Mass Storage device detected
scsi host6: usb-storage 2-1:1.0
scsi 6:0:0:0: CD-ROM            Dell     DVD+/-RW DW514   0102 PQ: 0 ANSI: 0
sr 6:0:0:0: [sr0] scsi3-mmc drive: 24x/24x writer dvd-ram cd/rw xa/form2 cdda caddy
cdrom: Uniform CD-ROM driver Revision: 3.20
sr 6:0:0:0: Attached scsi CD-ROM sr0
sr 6:0:0:0: Attached scsi generic sg2 type 5

..but udisks does not report any details:

$ udisksctl status
MODEL                     REVISION  SERIAL               DEVICE
--------------------------------------------------------------------------
-                                                        sda     
-                                                        sdb     
-                                                        sr0  

..I'd guess this is because tinycorelinux uses udev-174, which is before the hwdb, but it doesn't cause an error.

udisks does seem to recognise the drive:

$ udisksctl info -b /dev/sr0
/org/freedesktop/UDisks2/block_devices/sr0:
  org.freedesktop.UDisks2.Block:
    Configuration:              [('fstab', {'fsname': <b'/dev/sr0'>, 'dir': <b'/mnt/sr0'>, 'type': <b'auto'>, 'opts': <b'noauto,users,exec'>, 'freq': <0>, 'passno': <0>})]
    CryptoBackingDevice:        '/'
    Device:                     /dev/sr0
    DeviceNumber:               2816
    Drive:                      '/org/freedesktop/UDisks2/drives/drive_2'
    HintAuto:                   true
    HintIconName:               
    HintIgnore:                 false
    HintName:                   
    HintPartitionable:          false
    HintSymbolicIconName:       
    HintSystem:                 false
    Id:                         
    IdLabel:                    
    IdType:                     
    IdUUID:                     
    IdUsage:                    
    IdVersion:                  
    MDRaid:                     '/'
    MDRaidMember:               '/'
    PreferredDevice:            /dev/sr0
    ReadOnly:                   true
    Size:                       0
    Symlinks:                   /dev/disk/by-path/pci-0000:00:14.0-usb-0:1:1.0-scsi-0:0:0:0
                                /dev/scd0

..but perhaps it needs "Id" or "IdType"?

I guess this would be expected not to work:

$ udisksctl mount -b /dev/sr0
Object /org/freedesktop/UDisks2/block_devices/sr0 is not a mountable filesystem

Is there a way (GVFS_DEBUG=all?) to make gvfs-mount provide useful debug data?
Comment 18 john.frankish@outlook.com 2016-01-15 11:23:34 UTC
..and if I start udisk monitor and plug in the cd/dvd drive I get this, but it still seems to be missing something that lets gvfs know it is a cd/dvd drive:

$ udisksctl monitor
Monitoring the udisks daemon. Press Ctrl+C to exit.
15:17:35.834: The udisks-daemon is running (name-owner :1.33).
15:17:43.493: Added /org/freedesktop/UDisks2/drives/Dell_DVD_2b_2f_RW_DW514_D4A0801277
  org.freedesktop.UDisks2.Drive:
    CanPowerOff:                true
    Configuration:              {}
    ConnectionBus:              usb
    Ejectable:                  true
    Id:                         Dell-DVD+--RW-DW514-D4A0801277
    Media:                      
    MediaAvailable:             false
    MediaChangeDetected:        true
    MediaCompatibility:         optical_cd
                                optical_cd_r
                                optical_cd_rw
                                optical_dvd
                                optical_dvd_plus_r
                                optical_dvd_plus_r_dl
                                optical_dvd_plus_rw
                                optical_dvd_r
                                optical_dvd_ram
                                optical_dvd_rw
                                optical_mrw
                                optical_mrw_w
    MediaRemovable:             true
    Model:                      DVD+/-RW DW514
    Optical:                    false
    OpticalBlank:               false
    OpticalNumAudioTracks:      0
    OpticalNumDataTracks:       0
    OpticalNumSessions:         0
    OpticalNumTracks:           0
    Removable:                  true
    Revision:                   0102
    RotationRate:               -1
    Seat:                       seat0
    Serial:                     D4A0801277
    SiblingId:                  /sys/devices/pci0000:00/0000:00:14.0/usb2/2-1/2-1:1.0
    Size:                       0
    SortKey:                    01hotplug/1452871063492386
    TimeDetected:               1452871063492386
    TimeMediaDetected:          0
    Vendor:                     Dell
    WWN:                        
15:17:43.493: Added /org/freedesktop/UDisks2/block_devices/sr0
  org.freedesktop.UDisks2.Block:
    Configuration:              [('fstab', {'fsname': <b'/dev/sr0'>, 'dir': <b'/mnt/sr0'>, 'type': <b'auto'>, 'opts': <b'noauto,users,exec'>, 'freq': <0>, 'passno': <0>})]
    CryptoBackingDevice:        '/'
    Device:                     /dev/sr0
    DeviceNumber:               2816
    Drive:                      '/org/freedesktop/UDisks2/drives/Dell_DVD_2b_2f_RW_DW514_D4A0801277'
    HintAuto:                   true
    HintIconName:               
    HintIgnore:                 false
    HintName:                   
    HintPartitionable:          false
    HintSymbolicIconName:       
    HintSystem:                 false
    Id:                         
    IdLabel:                    
    IdType:                     
    IdUUID:                     
    IdUsage:                    
    IdVersion:                  
    MDRaid:                     '/'
    MDRaidMember:               '/'
    PreferredDevice:            /dev/sr0
    ReadOnly:                   true
    Size:                       0
    Symlinks:                   /dev/cdrom
                                /dev/cdrw
                                /dev/disk/by-id/usb-Dell_DVD+_-RW_DW514_D4A0801277-0:0
                                /dev/disk/by-path/pci-0000:00:14.0-usb-0:1:1.0-scsi-0:0:0:0
                                /dev/dvd
                                /dev/dvdrw
                                /dev/scd0
Comment 19 Ondrej Holy 2016-01-19 13:17:19 UTC
(In reply to john.frankish@outlook.com from comment #17)
> I compiled the latest udisks and had a look.

Do you see same output from gvfs-mount -l with the latest udisks also?
 
> $ udisksctl status
> MODEL                     REVISION  SERIAL               DEVICE
> --------------------------------------------------------------------------
> -                                                        sda     
> -                                                        sdb     
> -                                                        sr0  
> 
> ..I'd guess this is because tinycorelinux uses udev-174, which is before the
> hwdb, but it doesn't cause an error.

I don't know, maybe this is question for some udisks guys...
 
> ..but perhaps it needs "Id" or "IdType"?

I do not think so...

> I guess this would be expected not to work:
> 
> $ udisksctl mount -b /dev/sr0
> Object /org/freedesktop/UDisks2/block_devices/sr0 is not a mountable
> filesystem

Yes, this is probably same as gvfs-mount -d /dev/sr0. It should not work, because audio cd are not mountable as unix mounts...

> Is there a way (GVFS_DEBUG=all?) to make gvfs-mount provide useful debug
> data?

Unfortunately udisks2volumemonitor doesn't contains any debug output...

(In reply to john.frankish@outlook.com from comment #18)
> ..and if I start udisk monitor and plug in the cd/dvd drive I get this, but
> it still seems to be missing something that lets gvfs know it is a cd/dvd
> drive:

The log from monitor is more or less same as mine, so it should be ok, only thing which differs is following, which is caused by your fstab entry:

>     Configuration:              [('fstab', {'fsname': <b'/dev/sr0'>, 'dir':
> <b'/mnt/sr0'>, 'type': <b'auto'>, 'opts': <b'noauto,users,exec'>, 'freq':
> <0>, 'passno': <0>})]

However it shouldn't be problem, because it works for me correctly when I add same fstab entry...
Comment 20 john.frankish@outlook.com 2016-01-19 16:16:01 UTC
Yes, the output is the same:

$ gvfs-mount -l
Volume(0): sda1
  Type: GUnixVolume
Volume(1): sda2
  Type: GUnixVolume
Volume(2): sda3
  Type: GUnixVolume
Volume(3): sdb1
  Type: GUnixVolume
  Mount(0): sdb1 -> file:///mnt/sdb1
    Type: GUnixMount
Volume(4): sdb2
  Type: GUnixVolume
Volume(5): sr0
  Type: GUnixVolume

..but thanks for the suggestions
Comment 21 Ondrej Holy 2016-01-20 13:37:21 UTC
Asking just for sure, does gvfs communicate with the newly compiled udisks? Can you see same output from the system version of udisksctl monitor? Because otherwise I do not really know, why gvfs doesn't see the drive...

Only case when we do not include drives in volume monitor is when it is connected to another seat, but I suppose you don't have loginctl and thus there are no seats...
Comment 22 john.frankish@outlook.com 2016-01-20 14:23:52 UTC
Probably the same thing, but if I try to "mount" the drive with an audio cd in it with Nautilus, I get:

Unable to access "sr0"

mount: mounting /dev/sr0 on /mnt/sr0 failed: No medium found

..which kind of supports my idea that either gvfs/udisks/udev don't see the drive as a cd/dvd or they don't see there is an audio disk in it...

It seems like the latter as I can read a data cd with Nautilus.
Comment 23 john.frankish@outlook.com 2016-01-20 16:18:46 UTC
> Asking just for sure, does gvfs communicate with the newly compiled udisks? Can > you see same output from the system version of udisksctl monitor

'Not sure what is meant by "system version of udisksctl monitor" - there is only one version of gvfs and one version of udisks on the machine.

This is not a systemd machine, so no loginctl.
Comment 24 john.frankish@outlook.com 2016-01-23 08:24:11 UTC
I tried mounting a data cd with gvfs:

$ gvfs-mount -d /dev/sr0

(gvfs-mount:18289): GLib-GIO-CRITICAL **: g_mount_get_root: assertion 'G_IS_MOUNT (mount)' failed

(gvfs-mount:18289): GLib-GIO-CRITICAL **: g_file_get_path: assertion 'G_IS_FILE (file)' failed
Mounted /dev/sr0 at (null)

(gvfs-mount:18289): GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed

(gvfs-mount:18289): GLib-GObject-CRITICAL **: g_object_unref: assertion 'G_IS_OBJECT (object)' failed

$ ls /mnt/sr0
EFI/  boot/ cde/

..but there is nothing in ~/.gvfs

$ gvfs-mount -u /mnt/sr0
Error finding enclosing mount: Containing mount does not exist


If I mount the data cd with nautilus and then try to eject it, I get:

Unable to eject sr0

eject: /mnt/sr0: inappropriate ioctl for device


In both cases I can use this to eject the cd:

sudo umount /mnt/sr0
eject

So definately something seems to be wrong, but what?
Comment 25 john.frankish@outlook.com 2016-01-30 08:29:01 UTC
I finally made some progress - the trick seems to have been;

*xdg-user-dirs-update
*start gnome-session
*open nautilus
*exit to console prompt
*start gnome-session again (alt=f2-r does not seem to be sufficient)
*gvfs-load cdda://sr0 (with an audio cd already in the drive)

..and then audacious, nautilus and sound-juicer will display/play the audio cd, but not rhythmbox.
Comment 26 Ondrej Holy 2016-02-01 10:39:53 UTC
(In reply to john.frankish@outlook.com from comment #24)
> I tried mounting a data cd with gvfs:
> 
> $ gvfs-mount -d /dev/sr0
> 
> (gvfs-mount:18289): GLib-GIO-CRITICAL **: g_mount_get_root: assertion
> 'G_IS_MOUNT (mount)' failed
> 
> (gvfs-mount:18289): GLib-GIO-CRITICAL **: g_file_get_path: assertion
> 'G_IS_FILE (file)' failed
> Mounted /dev/sr0 at (null)
> 
> (gvfs-mount:18289): GLib-GObject-CRITICAL **: g_object_unref: assertion
> 'G_IS_OBJECT (object)' failed
> 
> (gvfs-mount:18289): GLib-GObject-CRITICAL **: g_object_unref: assertion
> 'G_IS_OBJECT (object)' failed

This errors comes from mount_with_device_file_cb in gvfs-mount.c. It seems g_volume_mount_finish succeed, but g_volume_get_mount(volume) returns NULL, because it can't find the mount from some reason...

Actually this is probably because gvfs is filtering the mounts... and it seems this one is considered as system mount (because it is in /mnt) and thus it is not included. See should_include in gvfsudisks2volumemonitor.c.

I will try to reproduce and provide fix...

> $ ls /mnt/sr0
> EFI/  boot/ cde/

This is because your fstab entries probably...

> ..but there is nothing in ~/.gvfs

There shouldn't be anything, because it is in /mnt/sr0...

> $ gvfs-mount -u /mnt/sr0
> Error finding enclosing mount: Containing mount does not exist

This is just consequence that gvfs doesn't see the mount...

> If I mount the data cd with nautilus and then try to eject it, I get:
> 
> Unable to eject sr0
> 
> eject: /mnt/sr0: inappropriate ioctl for device
> 
> 
> In both cases I can use this to eject the cd:
> 
> sudo umount /mnt/sr0
> eject
> 
> So definately something seems to be wrong, but what?

(In reply to john.frankish@outlook.com from comment #25)
> I finally made some progress - the trick seems to have been;
> 
> *xdg-user-dirs-update
> *start gnome-session
> *open nautilus
> *exit to console prompt
> *start gnome-session again (alt=f2-r does not seem to be sufficient)
> *gvfs-load cdda://sr0 (with an audio cd already in the drive)

Hmm, great progress...

What is output of gvfs-mount -li this time?

> ..and then audacious, nautilus and sound-juicer will display/play the audio
> cd, but not rhythmbox.

This is probably another problem if other gio-based application works...
Comment 27 john.frankish@outlook.com 2016-02-02 05:56:11 UTC
$ gvfs-mount -il
Drive(0): Unnamed Drive (/dev/sda)
  Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
  ids:
   unix-device: '/dev/sda'
  themed icons:  [drive-harddisk-solidstate]  [drive-harddisk]  [drive]
  symbolic themed icons:  [drive-harddisk-solidstate-symbolic]  [drive-harddisk-symbolic]  [drive-symbolic]  [drive-harddisk-solidstate]  [drive-harddisk]  [drive]
  is_media_removable=0
  has_media=1
  is_media_check_automatic=1
  can_poll_for_media=0
  can_eject=0
  can_start=0
  can_stop=0
  start_stop_type=shutdown
  sort_key=00coldplug/00fixed/sd____a
Drive(1): Unnamed Drive (/dev/sdb)
  Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
  ids:
   unix-device: '/dev/sdb'
  themed icons:  [drive-removable-media-usb]  [drive-removable-media]  [drive-removable]  [drive]
  symbolic themed icons:  [drive-removable-media-usb-symbolic]  [drive-removable-media-symbolic]  [drive-removable-symbolic]  [drive-symbolic]  [drive-removable-media-usb]  [drive-removable-media]  [drive-removable]  [drive]
  is_media_removable=1
  has_media=1
  is_media_check_automatic=1
  can_poll_for_media=0
  can_eject=1
  can_start=0
  can_stop=0
  start_stop_type=shutdown
  sort_key=00coldplug/12removable/sd____b
Drive(2): Unnamed Drive (/dev/sr0)
  Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
  ids:
   unix-device: '/dev/sr0'
  themed icons:  [drive-optical]  [drive]
  symbolic themed icons:  [drive-optical-symbolic]  [drive-symbolic]  [drive-optical]  [drive]
  is_media_removable=1
  has_media=0
  is_media_check_automatic=1
  can_poll_for_media=0
  can_eject=1
  can_start=0
  can_stop=0
  start_stop_type=shutdown
  sort_key=01hotplug/1454406351322603
Mount(0): Audio Disc -> cdda://sr0/
  Type: GDaemonMount
  default_location=cdda://sr0/
  themed icons:  [media-optical-audio]  [media-optical]  [media]
  symbolic themed icons:  [media-optical-symbolic]  [media-symbolic]  [media-optical]  [media]
  x_content_types: x-content/audio-cdda
  can_unmount=1
  can_eject=0
  is_shadowed=0
Comment 28 Ondrej Holy 2016-02-02 09:21:13 UTC
(In reply to Ondrej Holy from comment #26)
> (In reply to john.frankish@outlook.com from comment #24)
> > I tried mounting a data cd with gvfs:
> > 
> > $ gvfs-mount -d /dev/sr0
> > 
> > (gvfs-mount:18289): GLib-GIO-CRITICAL **: g_mount_get_root: assertion
> > 'G_IS_MOUNT (mount)' failed
> > 
> > (gvfs-mount:18289): GLib-GIO-CRITICAL **: g_file_get_path: assertion
> > 'G_IS_FILE (file)' failed
> > Mounted /dev/sr0 at (null)
> > 
> > (gvfs-mount:18289): GLib-GObject-CRITICAL **: g_object_unref: assertion
> > 'G_IS_OBJECT (object)' failed
> > 
> > (gvfs-mount:18289): GLib-GObject-CRITICAL **: g_object_unref: assertion
> > 'G_IS_OBJECT (object)' failed
> 
> This errors comes from mount_with_device_file_cb in gvfs-mount.c. It seems
> g_volume_mount_finish succeed, but g_volume_get_mount(volume) returns NULL,
> because it can't find the mount from some reason...
> 
> Actually this is probably because gvfs is filtering the mounts... and it
> seems this one is considered as system mount (because it is in /mnt) and
> thus it is not included. See should_include in gvfsudisks2volumemonitor.c.
> 
> I will try to reproduce and provide fix...

Gvfs also filtering volumes, so you can't mount the device if mount point is e.g. in /mnt and gvfs-mount -d /dev/sr0 exits with following error:
No volume for device file /dev/sr0

So I am not able to reproduce and wonder what is happening on your machine... It seems that the mount and drive are not in correspondence, because volume and shadow mount are not listed in your gvfs-mount -li output (see Comment 7 for my gvfs-mount -l output).
Comment 29 Ondrej Holy 2016-02-02 09:23:39 UTC
Can't you try it without custom udev rules (and fstab entries) added by Tiny Core Linux?
Comment 30 john.frankish@outlook.com 2016-02-02 12:02:01 UTC
In tinycorelinux, the root file system is loaded to RAM. On shutdown, everything added (under /home for example) is lost unless expressly saved, so that it reboots to a clean system.

Normally extensions (packages), which are squashfs, are loop mounted and symlinked to the root filesystem.

I booted with the "nofstab" boot code, manually created a mount point, manually mounted a partition, loaded the required extensions (packages) to RAM rather than symlinking them, unmounted the partition and deleted the mount point.

The above gives me:

$ gvfs-mount cdda://sr0
$ gvfs-mount -l
Drive(0): Unnamed Drive (/dev/sda)
  Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
Drive(1): Unnamed Drive (/dev/sr0)
  Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
Drive(2): Unnamed Drive (/dev/sdb)
  Type: GProxyDrive (GProxyVolumeMonitorUDisks2)
Mount(0): Audio Disc -> cdda://sr0/
  Type: GDaemonMount

..but I'm not sure what I'm trying to achieve here - how in the gvfs scheme of things do I then mount, say, /dev/sdb1 given the mount point does not exist and no device shows in nautilus?

For the udev rules, in tinycorelinux they are a subset of the rules from udev-174 - are you suggesting that the full set of rules is required?
Comment 31 GNOME Infrastructure Team 2018-09-21 17:56:27 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to GNOME's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.gnome.org/GNOME/gvfs/issues/271.