Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 08 Nov 2010 13:28:26 +0100
From:      Ivan Voras <ivoras@freebsd.org>
To:        freebsd-fs@freebsd.org
Subject:   The state of Giant lock in the file systems?
Message-ID:  <ib8qda$nat$1@dough.gmane.org>

next in thread | raw e-mail | index | archive | help
I was looking at fusefs sources and there is a dance it does with the
Giant lock which looks fishy.

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" instances:

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

Except for these, is there any more magic that would need to be resolved
to excise Giant from VFS?

Would it be correct to think that coda is the single biggest obstacle?




Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?ib8qda$nat$1>