Bug 1384796

Summary: udisk does not clean the mount point during reboot
Product: Red Hat Enterprise Linux 7 Reporter: Lukas Herbolt <lherbolt>
Component: udisks2Assignee: Vojtech Trefny <vtrefny>
Status: CLOSED ERRATA QA Contact: Desktop QE <desktop-qa-list>
Severity: low Docs Contact:
Priority: unspecified    
Version: 7.2CC: bmilar, jkoten, jreznik, tpelka, tsmetana, xhe
Target Milestone: rc   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: udisks2-2.7.3-6 Doc Type: If docs needed, set a value
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2018-04-10 15:43:20 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:
Bug Depends On:    
Bug Blocks: 1420851    

Description Lukas Herbolt 2016-10-14 07:51:44 UTC
Description of problem:
When you change the default location for devices to be mounted under /media via udev rule. 
---
cat /etc/udev/rules.d/81-udisks2.rules:
ENV{ID_FS_USAGE}=="filesystem", ENV{UDISKS_FILESYSTEM_SHARED}="1"
---

The mount point '/media/<DEVICE NAME>' which is created by udisk is not removed 
during reboot. It leads to new directory created '/media/<DEVICE NAME>1' after 
reboot and mount over udisks.

Checking the documentation the folder should be removed by the umount helper umount.udisks2 which will clean the directory. THe helper should be specified in 
the /etc/mtab as 'helper=' or 'uhelper=' which does not seems to be there.

mtab from reproducer:

---
/dev/sr0 /media/XRMPOEM_EN iso9660 ro,nosuid,nodev,relatime,uid=0,gid=0,iocharset=utf8,mode=0400,dmode=0500 0 0
---

Current workaround is to set /media as tmpfs.

Version-Release number of selected component (if applicable):
libudisks2-2.1.2-6.el7.x86_64
udisks2-2.1.2-6.el7.x86_64

How reproducible:
Each time while shared disk is mounted under /media with udisks

Steps to Reproduce:
1. mount disk with udisks as shared under /media 
2. reboot machine 

Actual results:
New directory is created on every reboot /media/<DISKNAME>N
where DISKNAME is mounted and the previous old mountpoint remains 
empty (/media/<DISKNAME>). 

Expected results:
On each reboot the umount (/usr/sbin/umount.udisks2) will clean up the directories created by the udisks.

Additional info:

Comment 11 Vratislav Podzimek 2017-10-20 14:25:35 UTC
https://github.com/storaged-project/udisks/pull/430

Comment 13 Bohdan Milar 2018-01-18 10:15:43 UTC
Works fine with labeled disks. But with not labeled disks, UUID is used to create the mount point. UUID mount points still act incorrectly as described earlier:

- New directory is created on every reboot /media/<DISKNAME>N
where DISKNAME is mounted and the previous old mountpoint remains 
empty (/media/<DISKNAME>).

Tested on x86_64, aarch64, ppc64 with udisks2-2.7.3-4.el7 using image file as a loop device.

Comment 16 Bohdan Milar 2018-02-08 18:07:26 UTC
Test case updated to cover both - labeled and non-labeled partitions - and to be applicable also on remote systems (to test secondary archs).

Tested on x86_64, ppc64, ppc64le, aarch64.

Bug reproduced with udisks2-2.7.3-4 (for non-labeled partitions).
NOT reproduced with udisks2-2.7.3-6.

Fix verified.

Comment 19 errata-xmlrpc 2018-04-10 15:43:20 UTC
Since the problem described in this bug report should be
resolved in a recent advisory, it has been closed with a
resolution of ERRATA.

For information on the advisory, and where to find the updated
files, follow the link below.

If the solution does not work for you, open a new bug report.

https://access.redhat.com/errata/RHBA-2018:0868