a take at cache coherency
dillon at apollo.backplane.com
Fri Jan 27 11:07:10 PST 2006
:[forgot to post]
:On 25.01.2006, at 14:41, Csaba Henk wrote:
:>> I'd still use a ncp_shadowroot to get O(1) locking.
:> While you deref the the shadowroot pointer to go for the group lock,
:> the group might get broken up, and the shadowroot info will be stale.
:This can't happen as we still have kernel locking. At the moment there=20=
:won't be any two threads running in parallel accessing namecache=20
:records. Only if one of them blocks, another thread might sneak in. =20
:So doing a ->ncp_shadowinfo->ncp_exlocks++ is guarranteed to work (at=20
:the moment, when we make the namecache free of the BGL, we'll have to=20
:change the lock to something more sophisticated, but we're not there=20
We'll just use the serializer when we get to that point. But, as you
said, we don't need to do it now.
More information about the Kernel