- Annoyance
Edit, it happened again today and I got the syslog this time, the TL:DR is its this: https://github.com/libfuse/libfuse/issues/589
So yeah. It's known and old and still open.
May 13 12:00:30 Tower shfs: shfs: ../lib/fuse.c:1402: unlink_node: Assertion `node->nlookup > 1' failed.
This fires at line 1402 of fuse.c (libfuse 3.16.2 still — same version as Feb), which is the unlink_node cleanup path. The assertion guards against a refcount underflow — shfs has tried to decrement an
inode's lookup count below 1 when there are no more outstanding lookups. Once tripped, libfuse aborts the FUSE session and the /mnt/user mount is permanently severed.
Identical kernel symptoms as before — nfsd returns ENOTCONN to clients:
May 13 12:00:30 Tower kernel: nfsd: non-standard errno: -107
May 13 12:00:30 Tower kernel: WARNING: CPU: 0 PID: 15275 at fs/nfsd/vfs.c:111 nfserrno+0x45/0x60 [nfsd]
May 13 12:00:30 Tower kernel: RIP: 0010:nfserrno+0x45/0x60 [nfsd]
May 13 12:00:30 Tower kernel: nfsd_splice_read+0xe2/0x110 [nfsd]
May 13 12:00:30 Tower kernel: nfsd4_encode_splice_read+0x55/0xf0 [nfsd]
May 13 12:00:30 Tower kernel: nfsd4_encode_read_plus+0x10e/0x190 [nfsd]
May 13 12:00:30 Tower kernel: nfsd4_encode_operation+0x9e/0x230 [nfsd]
May 13 12:00:30 Tower kernel: nfsd4_proc_compound+0x24a/0x5f0 [nfsd]
May 13 12:00:30 Tower kernel: nfsd_dispatch+0x110/0x200 [nfsd]
May 13 12:00:30 Tower kernel: nfsd+0xbb/0xe0 [nfsd]