[Lustre-discuss] renamed directory retains a dentry under its old name?

Brian J. Murrell Brian.Murrell at Sun.COM
Thu Nov 19 04:47:32 PST 2009


On Thu, 2009-11-19 at 20:06 +0800, Phil Schwan wrote: 
> Hello old friends!

Heya phik.

> I return with a gift, like an almost-forgotten
> uncle visiting from a faraway land.

Yay!

> - one task creates a "foo.working" directory, does all its work
> inside, then renames it to "foo.done"
> 
> - another task polls, waiting for "foo.working" to disappear.  all of
> this occurs on one node.
> 
> - the problem: the rename occurred, but "foo.working" remains as a valid dentry!

So would this be a valid reproducer:

tty1$ mkdir foo.working
tty2$ while stat foo.working; do echo; done
tty2: [ loop continues, stating foo.working ]
tty1$ mv foo.{working,done}

Where the loop on tty2 should continue beyond the mv on tty1?

I tried the above on:

lustre: 1.8.1.50
kernel: patchless_client
build:  b1_8-20090921170221-CHANGED-2.6.28-11-generic

and the loop on tty2 terminates promptly on the mv on tty1.

Maybe my reproducer is missing some detail?  Does such a simple
reproducer reproduce the problem on your system?

b.

-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 197 bytes
Desc: This is a digitally signed message part
URL: <http://lists.lustre.org/pipermail/lustre-discuss-lustre.org/attachments/20091119/cc56bcad/attachment.pgp>


More information about the lustre-discuss mailing list