Skip to content

udisk fail to umount btrfs partion if default btrfs subvol is not "root" #1495

@jlmxyz

Description

@jlmxyz

step to reproduce :

  • create a btrfs filesystem on usb drive (root)
  • mount (root)
  • btrfs subvolume create XXXXX (root)
  • btrfs subvolume set-default XXXXX (root)
  • chown aaa (root)
  • umount and eject usbdrive (root)
  • plugin again, mount it using udisk (user)
  • verify that the XXXXX subvol is mounted :
    - btrfs subvolume show (root)
    - btrfs subvolume list (root)
  • umount it (user)

=> the umount fail

 $ dbus-monitor 
signal time=1774461540.582380 sender=org.freedesktop.DBus -> destination=:1.436 serial=2 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameAcquired
   string ":1.436"
signal time=1774461540.582403 sender=org.freedesktop.DBus -> destination=:1.436 serial=4 path=/org/freedesktop/DBus; interface=org.freedesktop.DBus; member=NameLost
   string ":1.436"
method call time=1774461546.660707 sender=:1.129 -> destination=:1.46 serial=552 path=/org/gtk/Private/RemoteVolumeMonitor; interface=org.gtk.Private.RemoteVolumeMonitor; member=MountUnmount
   string "0x55d98d7ea010"
   string "0x5648c2e78430"
   uint32 0
   string "385409:12"
signal time=1774461546.664081 sender=:1.46 -> destination=(null destination) serial=782 path=/org/gtk/Private/RemoteVolumeMonitor; interface=org.gtk.Private.RemoteVolumeMonitor; member=MountPreUnmount
   string "org.gtk.vfs.UDisks2VolumeMonitor"
   string "0x55d98d7ea010"
   struct {
      string "0x55d98d7ea010"
      string "XXXXX"
      string ". GThemedIcon drive-removable-media drive-removable drive drive-removable-media-symbolic drive-removable-symbolic drive-symbolic"
      string ". GThemedIcon drive-removable-media-symbolic drive-removable-symbolic drive-symbolic drive-removable-media drive-removable drive"
      string ""
      string "file:///run/media/aaa/XXXXX"
      boolean true
      string ""
      array [
      ]
      string "gvfs.time_detected_usec.1774177588387064"
      array [
      ]
   }
error time=1774461546.680551 sender=:1.46 -> destination=:1.129 error_name=org.gtk.GDBus.UnmappedGError.Quark._g_2dio_2derror_2dquark.Code0 reply_serial=552
   string "Error finding object for block device 0:170
"
^C

mountinfo :
127 28 0:120 /Photos /run/media/aaa/XXXXX rw,nosuid,nodev,noatime - btrfs /dev/sda1 rw,compress-force=zstd:3,space_cache=v2,subvolid=261,subvol=/XXXXX

udevadm db :

P: /devices/pci0000:00/0000:00:08.1/0000:04:00.3/usb2/2-2/2-2:1.0/host0/target0:0:0/0:0:0:0/block/sda/sda1
M: sda1
R: 1
J: b8:1
U: block
T: partition
D: b 8:1
N: sda1
L: 0
S: disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part1
S: disk/by-diskseq/16-part1
S: disk/by-path/pci-0000:04:00.3-usbv3-0:2:1.0-scsi-0:0:0:0-part1
S: disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part/by-partnum/1
S: disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part/by-label/XXXXX
S: disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part/by-uuid/74cbfe9f-68c9-4b99-ba63-b9485a5e8230
S: disk/by-label/XXXXX
S: disk/by-uuid/74cbfe9f-68c9-4b99-ba63-b9485a5e8230
S: disk/by-id/usb-Kingston_UHSII_uSD_Reader_202006001904-0:0-part1
Q: 28
E: DEVPATH=/devices/pci0000:00/0000:00:08.1/0000:04:00.3/usb2/2-2/2-2:1.0/host0/target0:0:0/0:0:0:0/block/sda/sda1
E: DEVNAME=/dev/sda1
E: DEVTYPE=partition
E: DISKSEQ=28
E: PARTN=1
E: PARTUUID=00000000-01
E: MAJOR=8
E: MINOR=1
E: SUBSYSTEM=block
E: USEC_INITIALIZED=122954076843
E: ID_BUS=usb
E: ID_MODEL=UHSII_uSD_Reader
E: ID_MODEL_ENC=UHSII\x20uSD\x20Reader
E: ID_MODEL_ID=3307
E: ID_SERIAL=Kingston_UHSII_uSD_Reader_202006001904-0:0
E: ID_SERIAL_SHORT=202006001904
E: ID_VENDOR=Kingston
E: ID_VENDOR_ENC=Kingston
E: ID_VENDOR_ID=11b0
E: ID_REVISION=0013
E: ID_TYPE=disk
E: ID_INSTANCE=0:0
E: ID_USB_MODEL=UHSII_uSD_Reader
E: ID_USB_MODEL_ENC=UHSII\x20uSD\x20Reader
E: ID_USB_MODEL_ID=3307
E: ID_USB_SERIAL=Kingston_UHSII_uSD_Reader_202006001904-0:0
E: ID_USB_SERIAL_SHORT=202006001904
E: ID_USB_VENDOR=Kingston
E: ID_USB_VENDOR_ENC=Kingston
E: ID_USB_VENDOR_ID=11b0
E: ID_USB_REVISION=0013
E: ID_USB_TYPE=disk
E: ID_USB_INSTANCE=0:0
E: ID_USB_INTERFACES=:080650:
E: ID_USB_INTERFACE_NUM=00
E: ID_USB_DRIVER=usb-storage
E: ID_PATH_WITH_USB_REVISION=pci-0000:04:00.3-usbv3-0:2:1.0-scsi-0:0:0:0
E: ID_PATH=pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0
E: ID_PATH_TAG=pci-0000_04_00_3-usb-0_2_1_0-scsi-0_0_0_0
E: ID_PART_TABLE_TYPE=dos
E: ID_FS_LABEL=XXXXX
E: ID_FS_LABEL_ENC=XXXXX
E: ID_FS_UUID=74cbfe9f-68c9-4b99-ba63-b9485a5e8230
E: ID_FS_UUID_ENC=74cbfe9f-68c9-4b99-ba63-b9485a5e8230
E: ID_FS_UUID_SUB=a440761d-11a8-48e5-abeb-aafc4a43a826
E: ID_FS_UUID_SUB_ENC=a440761d-11a8-48e5-abeb-aafc4a43a826
E: ID_FS_BLOCKSIZE=4096
E: ID_FS_LASTBLOCK=124967680
E: ID_FS_SIZE=511867617280
E: ID_FS_TYPE=btrfs
E: ID_FS_USAGE=filesystem
E: ID_PART_ENTRY_SCHEME=dos
E: ID_PART_ENTRY_TYPE=0x83
E: ID_PART_ENTRY_NUMBER=1
E: ID_PART_ENTRY_OFFSET=2048
E: ID_PART_ENTRY_SIZE=999741440
E: ID_PART_ENTRY_DISK=8:0
E: ID_BTRFS_READY=1
E: DEVLINKS=/dev/disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part1 /dev/disk/by-diskseq/16-part1 /dev/disk/by-path/pci-0000:04:00.3-usbv3-0:2:1.0-scsi-0:0:0:0-part1 /dev/disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part/by-partnum/1 /dev/disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part/by-label/XXXXX /dev/disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part/by-uuid/74cbfe9f-68c9-4b99-ba63-b9485a5e8230 /dev/disk/by-label/XXXXX /dev/disk/by-uuid/74cbfe9f-68c9-4b99-ba63-b9485a5e8230 /dev/disk/by-id/usb-Kingston_UHSII_uSD_Reader_202006001904-0:0-part1
E: TAGS=:systemd:
E: CURRENT_TAGS=:systemd:

udisctl dump

/org/freedesktop/UDisks2/block_devices/sda1:
  org.freedesktop.UDisks2.Block:
    Configuration:              []
    CryptoBackingDevice:        '/'
    Device:                     /dev/sda1
    DeviceNumber:               2049
    Drive:                      '/org/freedesktop/UDisks2/drives/Kingston_UHSII_uSD_Reader_202006001904'
    HintAuto:                   true
    HintIconName:               
    HintIgnore:                 false
    HintName:                   
    HintPartitionable:          true
    HintSymbolicIconName:       
    HintSystem:                 false
    Id:                         by-uuid-74cbfe9f-68c9-4b99-ba63-b9485a5e8230
    IdLabel:                    XXXXX
    IdType:                     btrfs
    IdUUID:                     74cbfe9f-68c9-4b99-ba63-b9485a5e8230
    IdUsage:                    filesystem
    IdVersion:                  
    MDRaid:                     '/'
    MDRaidMember:               '/'
    PreferredDevice:            /dev/sda1
    ReadOnly:                   false
    Size:                       511867617280
    Symlinks:                   /dev/disk/by-diskseq/16-part1
                                /dev/disk/by-id/usb-Kingston_UHSII_uSD_Reader_202006001904-0:0-part1
                                /dev/disk/by-label/XXXXX
                                /dev/disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part/by-label/XXXXX
                                /dev/disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part/by-partnum/1
                                /dev/disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part/by-uuid/74cbfe9f-68c9-4b99-ba63-b9485a5e8230
                                /dev/disk/by-path/pci-0000:04:00.3-usb-0:2:1.0-scsi-0:0:0:0-part1
                                /dev/disk/by-path/pci-0000:04:00.3-usbv3-0:2:1.0-scsi-0:0:0:0-part1
                                /dev/disk/by-uuid/74cbfe9f-68c9-4b99-ba63-b9485a5e8230
    UserspaceMountOptions:      uhelper=udisks2
                                x-gvfs-trash
  org.freedesktop.UDisks2.Filesystem:
    MountPoints:        /run/media/aaa/XXXXX
    Size:               511867617280
  org.freedesktop.UDisks2.Partition:
    Flags:              0
    IsContained:        false
    IsContainer:        false
    Name:               
    Number:             1
    Offset:             1048576
    Size:               511867617280
    Table:              '/org/freedesktop/UDisks2/block_devices/sda'
    Type:               0x83
    UUID:               

versions :

  • sys-fs/udisks
    Latest version installed: 2.11.1

  • gnome-base/gvfs
    Latest version installed: 1.58.0

  • dev-libs/libatasmart
    Latest version available: 0.19_p5
    Latest version installed: [ Not Installed ]

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions