Red Hat Bugzilla – Bug 189336
Solaris VxFS compatibility fix
Last modified: 2007-11-30 17:07:09 EST
Description of problem:
Here is a compatibility fix between Linux and Solaris when used with VxFS
filesystems: Solaris usually accepts acl entries in any order, but with
VxFS it replies with NFSERR_INVAL when it sees a four-entry acl that is not
in canonical form. It may also fail with other non-canonical acls -- I
can't tell, because that case never triggers: We only send non-canonical
acls when we fake up an ACL_MASK entry.
Instead of adding fake ACL_MASK entries at the end, inserting them in the
correct position makes Solaris+VxFS happy. The Linux client and server
sides don't care about entry order. The three-entry-acl special case in
which we need a fake ACL_MASK entry was handled in xdr_nfsace_encode. The
patch moves this into nfsacl_encode.
Version-Release number of selected component (if applicable):
Steps to Reproduce:
Upstream patch http://www.kernel.org/hg/linux-2.6/?cs=e5a01bb1b38d
Oops... its already fixed...
Reopening/reclosing to get off of kernel-maint list.