Re: [RFC] atomic create+open

From: Trond Myklebust
Date: Fri Oct 07 2005 - 11:24:29 EST


fr den 07.10.2005 Klokka 17:28 (+0200) skreiv Miklos Szeredi:
> >
> > Which may return yet another result for the dentry and another race.
> > There is no guarantee that you will ever make progress if someone is
> > doing something like.
> >
> > while true
> > do
> > echo "1" > foo
> > echo "2" > foo
> > done
> >
> > on the server.
>
> Not good example. This won't change the file, only the contents.
> Something with rename would be better.

Sorry, yes. This tweak should demonstrate what I meant

while true
do
echo "1" > foo
echo "2" > bar
mv bar foo
done

> We are still pitting two different races against each other. I can't
> see such a big difference in ugliness...

No we're not. I telling you that your open_create is not a solution for
the problems we have with open in NFSv4.

If it doesn't do atomic lookup+open, then I have an unfixable race. Any
"solution" that requires NFS to assume that the dcache will remain
consistent with the server namespace across more than one RPC operation
is prone to races.

OTOH mount/umount races are fixable since they involve only the local
namespace. Just add locking.

Trond

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/