Date: Tue, 21 Jun 2016 11:36:24 +0200 From: Edward Tomasz =?utf-8?Q?Napiera=C5=82a?= <trasz@FreeBSD.org> To: Alexander Motin <mav@FreeBSD.org> Cc: Cy Schubert <Cy.Schubert@komquats.com>, Jan Beich <jbeich@vfemail.net>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-head@freebsd.org Subject: Re: svn commit: r299448 - in head/sys/cddl/contrib/opensolaris: common/acl uts/common/fs/zfs uts/common/sys Message-ID: <20160621093624.GD80346@brick> In-Reply-To: <49d3d34d-ba91-ebdf-497f-cbe1614bec53@FreeBSD.org> References: <201606191428.u5JESbbs053857@slippy.cwsent.com> <49d3d34d-ba91-ebdf-497f-cbe1614bec53@FreeBSD.org>
next in thread | previous in thread | raw e-mail | index | archive | help
On 0619T1733, Alexander Motin wrote: > On 19.06.16 17:28, Cy Schubert wrote: > > In message <20160619080803.GA1638@brick>, Edward Tomasz > > =?utf-8?Q?Napiera=C5=82 > > a?= writes: > >> On 0614T0232, Jan Beich wrote: > >>> Alexander Motin <mav@FreeBSD.org> writes: > >>> > >>>> Author: mav > >>>> Date: Wed May 11 13:43:20 2016 > >>>> New Revision: 299448 > >>>> URL: https://svnweb.freebsd.org/changeset/base/299448 > >>>> > >>>> Log: > >>>> MFV r299442: 6762 POSIX write should imply DELETE_CHILD on directories > >> - and > >>>> some additional considerations > >>>> > >>>> Reviewed by: Gordon Ross <gwr@nexenta.com> > >>>> Reviewed by: Yuri Pankov <yuri.pankov@nexenta.com> > >>>> Author: Kevin Crowe <kevin.crowe@nexenta.com> > >>>> > >>>> openzfs/openzfs@d316fffc9c361532a482208561bbb614dac7f916 > >>> > >>> This commit confuses acl_is_trivial_np(3). Notice '+' in ls(1) and 'D' > >>> in getfacl(1) outputs. > >> > >> It's not just that. > >> > >> Those changes: > >> > >> 1. Confuse acl_is_trivial_np(3), as you say. It's hard to fix in libc, > >> because they make trivial ACLs different for files and directories, > >> and acl_is_trivial_np(3) has no way of telling which is which. > >> > >> 2. They make delete deny permission take precedence over the containing > >> directory write allow permission, which is rather different from what > >> people expect in unix systems, and is against the NFSv4 specification, > >> even though it might be a better fit for Windows. > > > > This is Windows behavior and inconsistent with the rest of FreeBSD and any > > UNIX or Linux system. > > > >> > >> 3. They make umask apply to inherit_only permissions, and > >> > >> 4. I don't fully understand this one yet, but from the ACL regression > >> test suite (which lives in tests/sys/acl/, and I'd appreciate people > >> actually ran this before committing ACL-related changes) it looks > >> like it makes umask not apply to the stuff it should. > >> > >> The #1 could be fixed by making ZFS not setting delete_child on write, > >> basically reverting to the previous behaviour in that aspect. As for > >> the others... I'm not saying each one of those is wrong, but they > >> certainly warrant further discussion, especially #2 and #4. > > > > I think #2 is wrong behavior on any UNIX-like or POSIX system. > > > >> > >> Basically, what I'm trying to say is that we should consider backing > >> this out for 11.0-RELEASE, reverting to the previous semantics, verified > >> by passing the regression tests. > > > > Agreed. > > > > What in FreeBSD was this patch supposed to solve in the first place? > > Growing divergence from OpenZFS upstream. I am not advocating this > patch, but it would be good, if possible, to not revert it completely, > but block wrong behavior with some minimal ifdefs to make further ZFS > merges easier. Help would be appreciated. ;) Our family just expanded, and thus I'm afraid I won't be able to help for the next few weeks. That's one of the reasons why I've suggested the backout for 11.0 - not a permanent "let's ignore this piece of code forever" backout, but a temporary one, for 11.0; we would then go back to the topic after the release.
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160621093624.GD80346>