summaryrefslogtreecommitdiff
path: root/tools/perf/tests/shell/script_python.sh
diff options
context:
space:
mode:
authorRick Macklem <rmacklem@uoguelph.ca>2026-01-09 19:21:41 +0300
committerChuck Lever <chuck.lever@oracle.com>2026-01-29 17:48:33 +0300
commit318579c0935c2faf1cccbc6359b410ff2ca4b84a (patch)
treed11c4fbe0600ca080e54b1e7bd70226ceb6a099e /tools/perf/tests/shell/script_python.sh
parentd2ca50606f5f0235d7780c1cd73b6614a5d07620 (diff)
downloadlinux-318579c0935c2faf1cccbc6359b410ff2ca4b84a.tar.xz
NFSD: Add POSIX draft ACL support to the NFSv4 SETATTR operation
The POSIX ACL extension to NFSv4 enables clients to set access and default ACLs via FATTR4_POSIX_ACCESS_ACL and FATTR4_POSIX_DEFAULT_ACL attributes. Integration of these attributes into SETATTR processing requires wiring them through the nfsd_attrs structure and ensuring proper cleanup on all code paths. This patch connects the na_pacl and na_dpacl fields in nfsd_attrs to the decoded ACL pointers from the NFSv4 SETATTR decoder. Ownership of these ACL references transfers to attrs immediately after initialization, with the decoder's pointers cleared to NULL. This transfer ensures nfsd_attrs_free() releases the ACLs on normal completion, while new error paths call posix_acl_release() directly when cleanup occurs before nfsd_attrs_free() runs. Early returns in the nfsd4_setattr() function gain conversions to goto statements that branch to proper cleanup handlers. Error paths before fh_want_write() branch to out_err for ACL release only; paths after fh_want_write() use the existing out label for full cleanup via nfsd_attrs_free(). The patch adds mutual exclusion between NFSv4 ACLs (sa_acl) and POSIX ACLs. Setting both types simultaneously returns nfserr_inval because these ACL models cannot coexist on the same file object. Signed-off-by: Rick Macklem <rmacklem@uoguelph.ca> Reviewed-by: Jeff Layton <jlayton@kernel.org> Signed-off-by: Chuck Lever <chuck.lever@oracle.com>
Diffstat (limited to 'tools/perf/tests/shell/script_python.sh')
0 files changed, 0 insertions, 0 deletions