2005-03-16 03:48:10 UTC
I've recently upgraded all my FUSE filesystem to fuse-2.2, previously we
were running fuse-2.1-pre0 and before that fuse-1.9. The upgrade to 2.2
required a few code changes to my filesystem, mainly yo use the new
filehandles and I was able to throw away much of the code which kept
track of open files.
Before the upgrade the filesystem had been running pretty flawlessly for
We've been running with fuse-2.2 for about a month and have just started
seeing a few problems.
1) FUSE filesystems fail and disappear without a trace. I've only seen
this a couple of times. There aren't any messages in the systems logs
and I can't find any trace of a core file. I unlimit the coredumpsize
before I start the fuse process.
2) FUSE filesystems hang, can't strace or attach with the debugger. In
dmesg we see this strange message: init_special_inode: bogus imode (0)
but I'm not sure if this is directly related to the hangups.
Only 1 thread of the filesystem hangs, other processes seem to continue
Here is one such thread, the kernel is 2.4.26.
m1 1178 1 0 Mar09 ?
00:00:06 /usr/local/bin/squirrel /m1 -o
$ cat status
State: D (disk sleep)
$ ls -l fd
lrwx------ 1 m1 64 Mar 16 11:34 3 -
/tmp/.fuse_devPVZN4A/fuse (deleted)lr-x------ 1 m1 64 Mar 16 11:34 4 -> pipe:
l-wx------ 1 m1 64 Mar 16 11:34 5 -> pipe:
lrwx------ 1 m1 64 Mar 16 11:34 6 -> /tmp/tmpfPscGmA
lr-x------ 1 m1 64 Mar 16 11:34 7 -
/data29/m1/367/va4/.mgiva_tc2:0.0$ ls -l /data29/m1/367/va4/.mgiva_tc2:0.0
-rw-r--r-- 1 m1 1261 Mar 15
$ file /data29/m1/367/va4/.mgiva_tc2:0.0
/data29/m1/367/va4/.mgiva_tc2:0.0: ASCII text
The process that got stuck while using the filesystem was a find command
and I've seen the same thing happen with a perl script that uses readdir
to search for files.
m1 9835 1 0 Mar14 ? 00:00:08 find /m1 -type f -a
( ( -name core ) -o ( -name core.* ) etc.......
I've still got the hanging thread if anyone has any suggestions.