[Bug 256936] Buggy filesystem detected - message wrongly triggered by FUSE filesystems
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 256936] Buggy filesystem detected - message wrongly triggered by FUSE filesystems"
- Reply: bugzilla-noreply_a_freebsd.org: "[Bug 256936] Buggy filesystem detected - message wrongly triggered by FUSE filesystems"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 02 Jul 2021 11:55:27 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=256936
Bug ID: 256936
Summary: Buggy filesystem detected - message wrongly triggered
by FUSE filesystems
Product: Base System
Version: CURRENT
Hardware: Any
OS: Any
Status: New
Severity: Affects Only Me
Priority: ---
Component: kern
Assignee: bugs@FreeBSD.org
Reporter: chogata@moosefs.pro
Since FreeBSD 12.2(? or 12.1?) and still on FreeBSD 13.0 machines running
MooseFS occasionally show a message:
"fuse_internal_do_getattr: cache incoherent on [PATH]! Buggy FUSE server
detected"
I tried to narrow down the issue. This script:
**************
#! /usr/bin/env bash
set -e
while true
do
size=$(((2097152 + $RANDOM) % 1024))
dd if=/dev/urandom of=somefile bs=1k count=$size
done
**************
ran on 2 different mount points of the same MooseFS directory (so 2 processes
in 2 different mount points modify the same file) triggers it constantly.
You can get the same result if you mount 2 instances of SSHfs and run this
script on both.
I suspect this has to do with file length changing during the write operation.
I don't know what SSHfs does, but MooseFS sends invalidate messages every time
an open file's length changes. I checked the operation log and they are sent
almost constantly along the write operations when the above scripts are run on
2 mount points. However invalidates are not obligatory and even when sent, a
race between invalidate and getattr can still occur. And this is not
filesystem's fault. Kernel should trust the information it gets from getattr,
especially on a network filesystem. This is not "buggy" behaviour :)
--
You are receiving this mail because:
You are the assignee for the bug.