Description of problem: $ cd fuse/ $ ../run ./test-fuse [...] 12: checking truncate libguestfs: error: lstatns: /truncated: No such file or directory 13: checking utimes libguestfs: error: lstatns: /timestamp: No such file or directory 14: checking utimens 15: checking writes libguestfs: error: lstatns: /new.txt: No such file or directory 16: checking POSIX ACL read operation 17: checking extended attribute (xattr) read operation <--- hangs forever here With debugging enabled: $ LIBGUESTFS_DEBUG=1 LIBGUESTFS_TRACE=1 ../run test-fuse [...] 17: checking extended attribute (xattr) read operation libguestfs: /tmp/testfuse42lUzr: mount_local_getattr (/user_xattr, 0x7fffab9ba500) libguestfs: trace: lstatns "/user_xattr" guestfsd: main_loop: new request, len 0x38 guestfsd: main_loop: proc 422 (lstatns) took 0.00 seconds libguestfs: trace: lstatns = <struct guestfs_statns *> libguestfs: /tmp/testfuse42lUzr: mount_local_getxattr (/user_xattr, user.test, 0x1d99250, 128) libguestfs: trace: lgetxattrs "/user_xattr" guestfsd: main_loop: new request, len 0x38 guestfsd: main_loop: proc 142 (lgetxattrs) took 0.00 seconds libguestfs: trace: lgetxattrs = <struct guestfs_xattr_list *> libguestfs: /tmp/testfuse42lUzr: mount_local_getattr (/, 0x7fffab9ba4d0) libguestfs: trace: lstatns "/" guestfsd: main_loop: new request, len 0x30 guestfsd: main_loop: proc 422 (lstatns) took 0.00 seconds libguestfs: trace: lstatns = <struct guestfs_statns *> <--- hangs forever here Version-Release number of selected component (if applicable): libguestfs 1.29.22 fuse-2.9.3-4.fc22.x86_64 How reproducible: 100% Steps to Reproduce: 1. See commands above.
Since this doesn't deadlock on Fedora 21 which has an identical version of fuse, it might be a kernel problem. Failing kernel is: 3.19.0-0.rc4.git4.1.fc22.x86_64 Works on: 3.17.4-302.fc21.x86_64
It turns out the problem is /sbin/fuser which is hanging (don't confuse fuse and fuser!) I have asked upstream to see if they have seen anything like this. It appears to be a kernel problem, because using an older kernel, but identical psmisc + fuse, no problem.
For whatever reason, this bug has "fixed itself" in latest Rawhide, so closing.