Skip to content
This repository

mount point not detected on btrfs device #165

Closed
IgnorantGuru opened this Issue October 06, 2012 · 5 comments

3 participants

IgnorantGuru Scimmia22 OmegaPhil
IgnorantGuru
Owner

Received elsewhere:

When I click on the list of devices on the left, the devices mount. It then lists the mount point after the device, but one of my partitions doesn't. when I click on it again, instead of taking me to the mount point, it gives me an error that it's already mounted. I can access it through the normal mount point, so it is mounting correctly.

IgnorantGuru
Owner

It sounds like the udev data for the device is incomplete or spacefm isn't detecting the mount. I'd like to see:

  • the stdout output (run spacefm in a terminal) and include the output produced when you first click the device to mount it
  • the output of right-click|Properties for the device before it's mounted and after.
  • the relevant line from /proc/self/mountinfo when the device is mounted:

You can use pastebin or gist for the output.

Also, after its mounted, if you stop all instances of spacefm then restart it, does it then show it as mounted?

Scimmia22

I realized as I was setting up a few things the other day that the partition this is happening on is my one and only btrfs partition. The shell redirect captured the "properties" as well, so everything is in stdout is here: http://pastebin.com/6agipiBV

From /proc/self/mountinfo:
39 18 0:30 / /media/sda3-ata-WDC_WD3200BEKT-6 rw,nosuid,nodev,noexec,noatime shared:25 - btrfs /dev/sda3 rw,space_cache

Oh, and closing down SpaceFM and reopening does not recognize the mount.

IgnorantGuru
Owner

I am able to reproduce this with a btrfs partition. The problem is that the major:minor number for the device obtained through udev (8:3) differs from the major:minor number in /proc/self/mountinfo (0:30). My devices have the same numbering as yours. The major 8 appears to be correct based on /proc/devices. So it appears the wrong major:minor is appearing in /proc/self/mountinfo.

SpaceFM uses the major:minor numbers to lookup mount points. Since they differ, it doesn't correlate the 0:30 line in /proc/self/mountinfo with the udev device 8:3, hence no mount points found, hence not mounted.

So the question is, why is the wrong major:minor being written to /proc/self/mountinfo, and by what? It sounds like it might be a bug in btrfs. I found this on the btrfs mailing list - appears to be a three-year old problem no one has yet bothered to address.

I should at least be able to put a workaround in place for this shortly.

IgnorantGuru
Owner

This should now be corrected in the next branch and also in udevil next (d324b07c) (for Arch use AUR spacefm-git and udevil-git, or see BUILD NEXT in README). When testing I recommend updating both spacefm and udevil. Thanks for the report.

IgnorantGuru IgnorantGuru closed this October 21, 2012
OmegaPhil

For the benefit of the ticket, this is still the case now (I have many btrfs volumes now so can be asked to check etc).

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.