Unionfs: core cache-coherency code
This represents the core of the cache-coherency code, the code which
maintains time-based invariants; the lower objects should never be newer
than the upper Unionfs objects. If they are newer, then it means that a
user has modified the lower Unionfs branches directly. If so, then we have
to revalidate our objects by rebuilding them, and possibly discard any stale
data or meta-data. See Documentation/filesystems/unionfs/concepts.txt under
the "Cache Coherency" section for more details of this design and
implementation.
Signed-off-by: Erez Zadok <ezk@cs.sunysb.edu>