Bug 728467 - sshfs mount block ll command and cannot be unmounted
Summary: sshfs mount block ll command and cannot be unmounted
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: fuse-sshfs
Version: 15
Hardware: Unspecified
OS: Unspecified
unspecified
unspecified
Target Milestone: ---
Assignee: Peter Lemenkov
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2011-08-05 08:52 UTC by Pierre Blavy
Modified: 2011-10-04 15:06 UTC (History)
2 users (show)

Fixed In Version: fuse-sshfs-2.3-1.fc15
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2011-10-04 15:06:01 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)

Description Pierre Blavy 2011-08-05 08:52:13 UTC
Description of problem:
fusermount -u do not work after a broken ssh connection. The invalid mountpoint is in a strage state that locks the ls command.

---

Version-Release number of selected component (if applicable):
fusermount version: 2.8.5
SSHFS version 2.2
FUSE library version: 2.8.5
fusermount version: 2.8.5
using FUSE kernel interface version 7.12

---

How reproducible:
always

---

Steps to Reproduce:
1.mount a remote ssh filesystem with sshfs
2.lost the ssh connection (wait for ``broken pipe or missing link errors, if you quickly plus/unplug nothing happens), then replug the cable
3.try to umount the ssf filesystem with fusermount -u
  
---

Actual results:
1) I mount a distant folder:
su pierre;
cd ~; mkdir test;
sshfs someone:/home/someone test;

This mount is sucessfull and can be tested
cat test/somefile; #WORKS
touch test/someotherfile; #WORKS

2) For some reason ssh connection is lost for a long time (a cat eat a wire, I unpluged my ethernet cable or zombies from outer space decide to do so). Then I repear the connection (re plug the cable and kill the zoombies).

3) LS FAILS (except for the user who has mounted the filesystem)

su root; 
ll /home/pierre;
freeze the terminal (Ctrl +C do NOT work, but closing the terminal window and opening a new one is a workaround).

Using autocompletion with tab tab freeze the terminal too.

su pierre; 
ll /home/pierre;
drwxr-xr-x. 2 pierre pierre      4096  5 mai    2010 Bananas
d?????????? ? ?      ?              ?              ? test


4) UMOUNT FAILS
su pierre;
fusermount -u /home/pierre/test;
fusermount: entry for /home/pierre/test not found in /etc/mtab

But fusermount lies:
cat /etc/mtab | grep test;
someone:/home/someone /home/pierre/test fuse.sshfs rw,nosuid,nodev,relatime,user_id=0,group_id=0,max_read=65536 0 0

su -;
umount /home/pierre/test;
Terminal freezes but Ctrl +C works.

---

Expected results:
fusermount -u should unmount the filesystem, not freeze the terminal
ls should work
even if ssh is lost, the mounted folder must be in a state that do not generate strage bugs.


Additional info:
Workaround : reboot.

Comment 1 Peter Lemenkov 2011-09-22 12:54:53 UTC
Hello.
Could you, please, try latest fuse-sshfs (2.3, in updates-testing). It should handle disconnects much more gracefully.

Comment 2 Pierre Blavy 2011-09-26 13:26:03 UTC
Things seems to work now ;)
Thank.


--- DETAILS ---

cd ~; mkdir test;
sshfs someone:/home/someone test;

1) OK
cat test/somefile; #WORKS
touch test/someotherfile; #WORKS

2) ifconfig eth0 down #A zombie eat the cable

3) OK
su root; 
ll /home/pierre;
drwxr-xr-x. 2 pierre pierre      4096  5 mai    2010 Bananas

su pierre
ll /home/pierre;
drwxr-xr-x. 2 pierre pierre      4096  5 mai    2010 Bananas

4)OK
su pierre;
fusermount -u /home/pierre/test;

OR

su -;
umount /home/pierre/test;

folder is sucessefully unmounted


Note You need to log in before you can comment on or make changes to this bug.