gluster-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Gluster-devel] detected cyclic loop formation during inode linkage


From: Emmanuel Dreyfus
Subject: Re: [Gluster-devel] detected cyclic loop formation during inode linkage
Date: Thu, 9 Aug 2012 07:18:43 +0200
User-agent: MacSOUP/2.7 (unregistered for 2028 days)

Anand Avati <address@hidden> wrote:

> The Linux FUSE does not perform lookup() on ".." but instead looks up the
> parent of cwd's dentry within the kernel module itself. In 3.3 we changed
> the behavior to establish inode on a ".." lookup but neglect dentry
> establishment (since it will form a loop). You might want to
> backport 9bd1b291e3e107250b38d05702df7cd751382bdc to release-3.2 if NetBSD
> FUSE sends ".." lookup.

I would prefer to fix NetBSD FUSE so that it gets closer to Linux
behavior, but that does not look obvious: once its TTL is expired, the
parent node may get INACTIVE/FORGET, therefore we must send a LOOKUP ..
to the filesystem to retreive it again. 

Even if the kernel avoids sending FORGET for nodes that have children,
there are caveats for distributed filesystems: the parent may have been
changed by another client that did a RENAME, therefore I fail to see how
it can always avoid a LOOKUP.

How does it works on Linux? 

-- 
Emmanuel Dreyfus
http://hcpnet.free.fr/pubz
address@hidden



reply via email to

[Prev in Thread] Current Thread [Next in Thread]