[PVFS-developers] Return of the Rename Bug

Porter Don PorterDE at mercury.hendrix.edu
Tue May 4 16:37:54 EDT 2004


The rename patch against 1.6.0 I sent a month or so ago didn't get cleanly
applied to cvs and the 1.6.3 prerelease.  Thus renames in the library are
broken again.

In 1.6.3pre1, the ack's fs_ino is set before the call.  The problem is that
the md_open call gets the information from the req and writes to the ack.
Thus, the change to the ack is being ignored and the bad fs_ino is still
getting written to disk.  The assignment needs to be made to the req, and
the correct value will make its way into the req, as below:

diff -ur pvfs-1.6.3-pre1/mgr/mgr.c pvfs-1.6.3-pre1-rename-fix/mgr/mgr.c
--- pvfs-1.6.3-pre1/mgr/mgr.c   Wed Apr 21 15:57:45 2004
+++ pvfs-1.6.3-pre1-rename-fix/mgr/mgr.c        Tue May  4 14:11:45 2004
@@ -1369,7 +1369,7 @@
         * this is correct in the metadata file, so we fill it in before
         * calling md_open().
         */
-       ack_p->ack.open.meta.fs_ino = fs_p->fs_ino;
+       req_p->req.open.meta.fs_ino = fs_p->fs_ino;
 
        /* md_open() fills in the st_ino structure used below and 
         * performs sanity checking on the values passed in

I know this is a bit terse, but I didn't really want to re-explain the
entire bug.  If anyone has questions about this, I would be happy to explain
further or discuss.

Thanks,
Don


More information about the PVFS-developers mailing list