a take at cache coherency

Csaba Henk csaba.henk at creo.hu
Mon Jan 23 20:49:42 PST 2006


On 2006-01-24, Csaba Henk <csaba.henk at xxxxxxx> wrote:
> On 2006-01-23, Simon 'corecode' Schubert <corecode at xxxxxxxxxxxx> wrote:
>> + renames on the lower layer don't trigger namecache 
>> renames/invalidations on a higher layer.
[...]
> It's easy to set up a scenario where the upper layer goes async with a
> rename done in the lower one.

Just to give a concrete example:

/tmp$ mkdir -p a/d a/dd b
/tmp$ echo > a/d/x
/tmp$ echo x > a/dd/x
/tmp$ mount_null a b
/tmp$ ls -l a/dd/x
-rw-r--r--  1 csaba  wheel  2 Jan 24 01:17 a/dd/x
/tmp$ ls -l b/dd/x
-rw-r--r--  1 csaba  wheel  2 Jan 24 01:17 b/dd/x
/tmp$ mv a/dd a/ddd
/tmp$ mv a/d a/dd
/tmp$ ls -l a/dd/x
-rw-r--r--  1 csaba  wheel  0 Jan 24 01:17 a/dd/x
/tmp$ ls -l b/dd/x
-rw-r--r--  1 csaba  wheel  2 Jan 24 01:17 b/dd/x

 *  *  *

OK, the neat idea of keeping references only downward seems to be
unfeasible. Let's add a list of shadowing entries to the namecache
struct.





More information about the Kernel mailing list