Coda File System

Re: more race conditions (in venus 5.3.15) ?

From: Ivan Popov <pin_at_math.chalmers.se>
Date: Thu, 29 Nov 2001 08:38:59 +0100 (MET)
On Wed, 28 Nov 2001, Jan Harkes wrote:

> On Sun, Nov 25, 2001 at 07:22:16PM +0100, Ivan Popov wrote:
> > I see that tar makes the following:
> >
> > open("name", O_CREAT|O_WRONLY...., 0)
> > unlink("name")
> > symlink("....","name")
>
> Is there no 'close' for the open filedescriptor? Coda has some special

Sorry I omitted some steps, to be exact, it does the following:

open("dir/name", O_WRONLY|O_CREAT|O_EXCL|O_LARGEFILE, 0) = 4
fstat64(4, {st_mode=S_IFREG, st_size=0, ...}) = 0
close(4)                                = 0
utime("dir/", [2001/11/29-08:27:51, 2001/11/29-08:24:36]) = 0
lstat64("dir/name", {st_mode=S_IFREG, st_size=0, ...}) = 0
unlink("dir/name")                         = 0
symlink("target", "dir/name")                 = 0

[utime() looks meaningless but it shouldn't make any difference]

That is, it *does* close().

> Slow machine, it could very well be a slight difference in semantics
> between connected and write-disconnected operation.

I'm very careful about checking when I get write-disconnect and when I
don't. Then, with "cfs strong" and no conflicts there shouldn't be any
write-disconnect?

Regards,
--
Ivan
Received on 2001-11-29 02:39:18