Skip to content

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

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 ]

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions