Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 8 Nov 2010 17:10:28 +0200
From:      Kostik Belousov <kostikbel@gmail.com>
To:        John Baldwin <jhb@freebsd.org>
Cc:        freebsd-fs@freebsd.org, Ivan Voras <ivoras@freebsd.org>
Subject:   Re: The state of Giant lock in the file systems?
Message-ID:  <20101108151028.GI2392@deviant.kiev.zoral.com.ua>
In-Reply-To: <201011081004.59640.jhb@freebsd.org>
References:  <ib8qda$nat$1@dough.gmane.org> <201011081004.59640.jhb@freebsd.org>

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

--SvH2i/6Q4qfAo9X5
Content-Type: text/plain; charset=us-ascii
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Mon, Nov 08, 2010 at 10:04:59AM -0500, John Baldwin wrote:
> On Monday, November 08, 2010 7:28:26 am Ivan Voras wrote:
> > I was looking at fusefs sources and there is a dance it does with the
> > Giant lock which looks fishy.
> >=20
> > Grepping for "-ir giant" in /sys/fs on 8-stable shows only a handful of
> > mentionings, but if I understand it correctly only these "active" insta=
nces:
> >=20
> > 1) one set of mtx_assert() calls on it in pseudofs, which I can't figure
> > out what they're guarding
> > 2) some manual locking and unlocking in nfsclient which appears to only
> > guard printf() (???)
> > 3) some more locking in nfsserver which apparently is only there to
> > guard the underlying local file system
> > 4) coda, which appears to be the only one marked with D_NEEDGIANT, but
> > doesn't do much of its own interfacing with it
> >=20
> > Except for these, is there any more magic that would need to be resolved
> > to excise Giant from VFS?
> >=20
> > Would it be correct to think that coda is the single biggest obstacle?
>=20
> Err, all the VFS_LOCK_GIANT() stuff for filesystems that do not have=20
> MNTK_MPSAFE set.  I believe the currently MPSAFE fs's are UFS, ZFS, MSDOS=
FS,
> CD9660, UDF, NFS client, and devfs.  I think all others are !MPSAFE still.
pseudofs-based fses are mpsafe too.

I already claimed several times that I will remove VFS_LOCK_GIANT
after smbfs is locked. Patch for removal is sitting in my repository
for almost a year.

--SvH2i/6Q4qfAo9X5
Content-Type: application/pgp-signature
Content-Disposition: inline

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.11 (FreeBSD)

iEYEARECAAYFAkzYEuQACgkQC3+MBN1Mb4j9awCgjT/sNXF737obeLixZFmTJgZU
mwwAoMXrnVc+Jxaoz0R9iXmeV0TKyDXn
=5/2O
-----END PGP SIGNATURE-----

--SvH2i/6Q4qfAo9X5--



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