Skip site navigation (1)Skip section navigation (2)
Date:      Thu, 11 Aug 2016 22:57:23 +0000
From:      Glen Barber <gjb@FreeBSD.org>
To:        Slawa Olhovchenkov <slw@zxy.spb.ru>
Cc:        Andriy Gapon <avg@FreeBSD.org>, src-committers@freebsd.org, svn-src-all@freebsd.org, svn-src-stable@freebsd.org, svn-src-stable-11@freebsd.org
Subject:   Re: svn commit: r303970 - in stable/11/sys/cddl: compat/opensolaris/sys contrib/opensolaris/uts/common/fs/zfs contrib/opensolaris/uts/common/fs/zfs/sys
Message-ID:  <20160811225723.GG51184@FreeBSD.org>
In-Reply-To: <20160811225202.GI8192@zxy.spb.ru>
References:  <201608112048.u7BKm4OH076291@repo.freebsd.org> <20160811223331.GF22212@zxy.spb.ru> <20160811223637.GE51184@FreeBSD.org> <20160811225202.GI8192@zxy.spb.ru>

next in thread | previous in thread | raw e-mail | index | archive | help

--8bBEDOJVaa9YlTAt
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Fri, Aug 12, 2016 at 01:52:02AM +0300, Slawa Olhovchenkov wrote:
> On Thu, Aug 11, 2016 at 10:36:37PM +0000, Glen Barber wrote:
>=20
> > On Fri, Aug 12, 2016 at 01:33:31AM +0300, Slawa Olhovchenkov wrote:
> > > On Thu, Aug 11, 2016 at 08:48:04PM +0000, Andriy Gapon wrote:
> > >=20
> > > > Author: avg
> > > > Date: Thu Aug 11 20:48:03 2016
> > > > New Revision: 303970
> > > > URL: https://svnweb.freebsd.org/changeset/base/303970
> > > >=20
> > > > Log:
> > > >   MFC r303763,303791,303869: zfs: honour and make use of vfs vnode =
locking protocol
> > > >  =20
> > > >   ZFS POSIX Layer is originally written for Solaris VFS which is ve=
ry
> > > >   different from FreeBSD VFS.  Most importantly many things that Fr=
eeBSD VFS
> > > >   manages on behalf of all filesystems are implemented in ZPL in a =
different
> > > >   way.
> > > >   Thus, ZPL contains code that is redundant on FreeBSD or duplicate=
s VFS
> > > >   functionality or, in the worst cases, badly interacts / interferes
> > > >   with VFS.
> > > >  =20
> > > >   The most prominent problem is a deadlock caused by the lock order=
 reversal
> > > >   of vnode locks that may happen with concurrent zfs_rename() and l=
ookup().
> > > >   The deadlock is a result of zfs_rename() not observing the vnode =
locking
> > > >   contract expected by VFS.
> > > >  =20
> > > >   This commit removes all ZPL internal locking that protects parent=
-child
> > > >   relationships of filesystem nodes.  These relationships are prote=
cted
> > > >   by vnode locks and the code is changed to take advantage of that =
fact
> > > >   and to properly interact with VFS.
> > > >  =20
> > > >   Removal of the internal locking allowed all ZPL dmu_tx_assign cal=
ls to
> > > >   use TXG_WAIT mode.
> > > >  =20
> > > >   Another victim, disputable perhaps, is ZFS support for filesystem=
s with
> > > >   mixed case sensitivity.  That support is not provided by the OS a=
nyway,
> > > >   so in ZFS it was a buch of dead code.
> > > >  =20
> > > >   To do:
> > > >   - replace ZFS_ENTER mechanism with VFS managed / visible mechanism
> > > >   - replace zfs_zget with zfs_vget[f] as much as possible
> > > >   - get rid of not really useful now zfs_freebsd_* adapters
> > > >   - more cleanups of unneeded / unused code
> > > >   - fix / replace .zfs support
> > >=20
> > > MFC to 10.x/9.x planed?
> > >=20
> >=20
> > As I understand it, this does not affect stable/10.
>=20
> Sure?
> I think ZFS/VFS layers don't change between 9.x and 11.x
>=20

No, but as I understand it, a commit to head tickled this bug.  avg@ can
correct me if I am wrong.

Glen


--8bBEDOJVaa9YlTAt
Content-Type: application/pgp-signature; name="signature.asc"

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v2

iQIcBAEBCAAGBQJXrQLTAAoJEAMUWKVHj+KTIsUQAKMYQiFqVb3uT69rqtMBrs1F
4gbuUKWI/fovVirZ/tKjftQITj4WChZtabC7sW34wtS6Q5ja83B+4LUX++gf7Szi
ivBD/Vo+FdBWpwxubJdxkK5jHoqreroyfXPGp5kITrGn5SiPaa5bARh9RaGFzA2g
7v/RAYobYHsYZcm11BsSHCg5H8aB5bqCgHXdX+YZ7ZvoE3H4hGzHfXzNVJsRKlaW
DrcM0NMAVdfciAfe5cCRue3V6ODHXusjh3RWOaYmGAT+15fqz14JQAdyPwRpPdh0
pE1I7QLHqWL/64rc1cxLArag76f2RoeC+yQkk6w01S/tK81BZfZ/mxGQiK8ULe3R
jkDUHGdTXUx00qKA/uRCVMZRda5VBBZs5GbqvtRiYOiWYrzkcVZkfwfFq77SQjTi
ZmQwsPTK4HHG1FlGghnsAzrIrxbf7kEvFdoKiTOh+fS7IQiKPShSSbY/G1m+qQCv
mwzVHhs18Cv3a+a3iulWO8iLH6ORrO2ETW8c63S2Q6IM+ausi9SLEBhwoBQm+hn0
1lu7zd4MggsqoaqCR5tYSqAJ+mWrjinr4c+y4RbzPSryXI4XFBTzuRL65hk+YsCL
JEsu6U14wY6xCF10PjXK5g5kqZ4Q0YKOyjSLPEvMplsLWZMPFCZFSL/4cKc1AqkI
UTrETCW2bWlHQ2t/tH3a
=hlOr
-----END PGP SIGNATURE-----

--8bBEDOJVaa9YlTAt--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20160811225723.GG51184>