-
Notifications
You must be signed in to change notification settings - Fork 6
results_2021 05 19
rfjakob edited this page Jun 3, 2021
·
24 revisions
Results are commited to git: https://github.com/rfjakob/fuse-xfstests/tree/results_2021-05-19
Terminal log: https://github.com/rfjakob/fuse-xfstests/blob/results_2021-05-19/screenlog.0
Spreadsheet: https://docs.google.com/spreadsheets/d/1TjwtPj-vMmPiwe4Nf_NkTplvkMETW7EMiEnrCNWlpV8/edit?usp=sharing
Failures:
- generic/035:
t_rename_overwrite: fstat(3): No such file or directory
- ok, no known real-word impact
- known issue https://github.com/hanwen/go-fuse/issues/55
- generic/062:
=== TYPE lnk; NAMESPACE trusted
- ok, missing feature but nobody has complained yet
- namespace trusted xattrs are not supported
- generic/080:
+mtime not updated
- ok, no known real-word impact
- mtime updates are delayed by 2 seconds after mmap write
- looks like a bug in the kernel?
- Fixed in linux v5.13-rc1 (commit)
- generic/093:
+Failed to get capabilities
- ok, missing feature but nobody has complained yet
- These are
GETXATTR n2 {sz 0} ["security.capability"] 20b
requests, which we reject
- generic/099: umask is applied in addition to default acl
- bug, hard to fix. Causes more restrictive permissions, no not a security issue. Workaroundable by asking the user to set their umask.
- Problem is that the umask is applied to the permissions we get from the kernel, but when a default acl is present, the umask should be ignored (see umask(2)).
- This could be changed by enabling FUSE_DONT_MASK, but then we need to figure out if we have to apply the umask or not, depending on the parent dir acl.
- fusedebug trace from touch:
umask 0; touch file2:
09:58:12.257472 rx 794: CREATE n6 {0100666 [WRONLY,CREAT,NONBLOCK,0x8000] (00)} ["file2"] 6b
09:58:12.257603 tx 794: OK, {n7 g1 {M0100440 SZ=0 L=1 0:0 B0*4096 i0:4199751 A 1621497492.256923 M 1621497492.256923 C 1621497492.256923} &{1 0 0}}
umask 0722; touch file3:
09:58:12.268351 rx 840: CREATE n6 {0100044 [CREAT,NONBLOCK,WRONLY,0x8000] (0722)} ["file3"] 6b
09:58:12.268510 tx 840: OK, {n8 g1 {M0100040 SZ=0 L=1 0:0 B0*4096 i0:4199752 A 1621497492.267923 M 1621497492.267923 C 1621497492.267923} &{1 0 0}}
- generic/215:
mtime not update after mapped write
- Same kernel bug as generic/080, works in Linux 5.13
- generic/285:
seek sanity check failed!
- ok, test gets confused by gocryptfs header
- test expects allocation blocks of 4096 bytes, but we have (4096 - overhead) offset by the header size. There is no way to express this in
struct stat
, so we just pretend 4096.
- generic/286:
ERROR: [error:38] reached EOF:Success
- Bug in xfstests, fix posted on fstests mailing list: https://www.spinics.net/lists/fstests/msg16554.html
- Now instead fixed in gocryptfs via https://github.com/rfjakob/gocryptfs/commit/738a9e006af6f5e43871c2d8e208601c18191965
- generic/319:
group::r-x
- Same umask problem as generic/099
- generic/375:
+-rwxrwsrwx
- sgid bit not cleared on setfacl
- bug, must fix
- SETXATTR needs to run as fuse.Caller user?
- fixed via https://github.com/rfjakob/gocryptfs/commit/a38e5988bae3319a2c1c6745064f5785a0971d05
- generic/401:
..
missing - generic/426, generic/467, generic/477: `open_by_handle([...]) returned 116 incorrectly on a linked file!
- 116 = ESTALE = Stale file handle
- Known limitation, not sure if fixable in any FUSE filesystem
- Same thing in virtio-fs:
- generic/444:
+drwxr-sr-x
- Same umask problem as generic/099. Adding
umask 000
to the test fixes the issue.
- Same umask problem as generic/099. Adding
- generic/490:
+seek sanity check failed!
- generic/523:
fsck: corrupt xattr name on file "moofile": "user.gocryptfs.6AJTESQuk-hw0nWKiv85oA"
- known limitation: we do not support "/" in xattr names
- fsck error fixed via https://github.com/rfjakob/gocryptfs/commit/04858ddd222bbf7156f33f99cfb293a9b1e15ec8
- generic/564:
+copy_range: Function not implemented
- bug, wrong error code returned
- Fixed via https://github.com/rfjakob/gocryptfs/commit/b23e21f61fc51ffa9c1c823778553925e1cc115e