[PATCH v2 0/6] xfstests: Add support for using xfstests to test AFS
David Howells
dhowells at redhat.com
Mon Apr 24 07:10:36 PDT 2023
Here's a set of patches that make xfstests (mostly) work with the in-kernel
AFS client. It has to allow for a number of features of AFS, in
particular:
(*) AFS has its own permissions service that makes use of authentication
tokens obtained from such as kerberos and uses this in combination
with ACLs to determine file access rights. This overrides the use of
UNIX permissions and using su to impersonate another user doesn't
work.
(*) AFS sets the inode UID field to the user ID associated with the
authentication token, not the client's fsuid when creating.
(*) AFS doesn't support SUID/SGID/SVTX bits and doesn't propagate SGID on
directories, though it will propagate the GID.
(*) chown is rejected unless you have an authentication token that
indicates you're the owner of the file.
I've added fixes/workarounds for the above. There are five -g quick tests
that fail if unauthenticated:
- generic/258
- generic/634
Fail because they try to use dates that the server refuses to
handle (and gives EOVERFLOW for).
- generic/478
Fails because AFS file locking can't lock ranges.
- generic/633
Fails because of chown.
- generic/696
Fails because AFS doesn't propagate SGID in mkdir. This may be a
client (kernel) bug, a server bug or a design feature.
And if authenticated, the following additional failures occur because AFS
uses its own ACLs and authentication:
- generic/087
- generic/126
- generic/193
- generic/088
David
Changes
=======
ver #2)
- Rebased.
- Dropped the patches to handle the DIO blocksize being 1 as none of the
quick tests now use it on AFS.
- Changed generic/696 to not supply "noacl" to AFS.
Link: https://lore.kernel.org/r/162194962878.4011860.5561077785368723619.stgit@warthog.procyon.org.uk/ # v1
David Howells (6):
Add AFS support
generic/314, afs: Allow for a filesystem that doesn't honour SGID
inheritance
generic/317, afs: Allow for a filesystem not to honour the local
uid/gid
generic/123, generic/128, afs: Allow for an fs that does its own perm
management
generic/531: Check for O_TMPFILE
generic/696: AFS doesn't support the "noacl" command line option
build/rpm/xfstests.spec.in | 2 +-
check | 3 +-
common/config | 15 ++++++--
common/rc | 69 ++++++++++++++++++++++++++++++++----
doc/requirement-checking.txt | 23 ++++++++++++
tests/generic/123 | 1 +
tests/generic/128 | 1 +
tests/generic/314 | 1 +
tests/generic/317 | 1 +
tests/generic/531 | 1 +
tests/generic/696 | 5 ++-
11 files changed, 110 insertions(+), 12 deletions(-)
More information about the linux-afs
mailing list