Conversation
When umount.udisks2 is invoked for a btrfs subvolume mountpoint, stat() may return the anonymous btrfs device number instead of the backing block device. This makes the helper fail to find the matching UDisks object. Look up the btrfs mount source from /proc/self/mountinfo before falling back to the mountpoint device number. Fixes storaged-project#1495
|
Testing Farm failure is unrelated to this change. The failure is in
This PR only touches the Could you re-run the Testing Farm check? |
That's caused by some changes in the latest exfatprogs, I am already working on fixing this (storaged-project/libblockdev#1199), you can ignore these failures. |
|
/packit test |
1 similar comment
|
/packit test |
|
is there any review planned? so that it's integrated into a release? it is problematic to have to umount the disk by root user |
|
Thanks for testing and confirming the umount fix works. The mount-side "operation was cancelled" error looks unrelated to this PR — this change only touches the |
|
The code is copy-pasted from udisks/src/udisksmountmonitor.c Lines 504 to 548 in e75c352 Would be nice to have this as a common function somewhere to avoid code duplication. While |
|
Thanks for the review. I extracted the btrfs mountinfo parsing into the private |
When umount.udisks2 is invoked for a btrfs subvolume mountpoint, stat() may return the anonymous btrfs device number instead of the backing block device. This makes the helper fail to find the matching UDisks object.
Look up the btrfs mount source from /proc/self/mountinfo before falling back to the mountpoint device number.
Fixes #1495