[DragonFlyBSD - Bug #129] (Closed) namecache coherency 3rd turn

Francois Tigeot via Redmine bugtracker-admin at leaf.dragonflybsd.org
Sat Jan 21 06:46:16 PST 2012


Issue #129 has been updated by Francois Tigeot.

Description updated
Status changed from New to Closed
Assignee deleted (0)

Closing due to lack of recent feedback.
----------------------------------------
Bug #129: namecache coherency 3rd turn
http://bugs.dragonflybsd.org/issues/129

Author: Csaba Henk
Status: Closed
Priority: Low
Assignee: 
Category: 
Target version: 


Hi!

This time the following changes were made:

 - Namecache locks are kept by shadowinfo structures which
   can be embedded into the namecache structure itself (singleton
   groups) or fetched from a pool (for non-singleton groups).

 - Shadow group data structure: I ended up at what has been
   suggested by Matt earlier: shadow group entries form a circular list.
   Double linked in order to support O(1) node deletion, enhanced
   with a height counter to retain tree semantics.

 - cache_setunresolved(ncp) blows up subtree over ncp to break broken
   topologies.

 - Deadlock avoiding techniques of the previous patch have been kept.

 - The "struct namecache *nc_shadowed" field of namecache structures
   still exists, but is nowhere referred by cache code. Now it's sort
   of a private field, almost like the "void *" fields in vnodes,
   specinfo structures, etc. It could be easily ditched and replaced by
   per-mount hash for those fs-es who would use it. I just kept it as
   is -- I didn't want to do anything about it without having a
   consensus.

 - Nullfs adjusted to this API.

Regards,
Csaba


-- 
You have received this notification because you have either subscribed to it, or are involved in it.
To change your notification preferences, please click here: http://bugs.dragonflybsd.org/my/account





More information about the Bugs mailing list