[Ocfs2-tools-commits] zab commits r459 - trunk/libocfs2

svn-commits at oss.oracle.com svn-commits at oss.oracle.com
Fri Dec 3 19:51:10 CST 2004


Author: zab
Date: 2004-12-03 19:51:08 -0600 (Fri, 03 Dec 2004)
New Revision: 459

Modified:
   trunk/libocfs2/expanddir.c
Log:
o _expand_dir failed to refresh its reference of cinode->ci_inode after it
  closed and reopened the cinode.  so don't let it even try to maintain a 
  redundant reference.


Modified: trunk/libocfs2/expanddir.c
===================================================================
--- trunk/libocfs2/expanddir.c	2004-12-04 00:51:35 UTC (rev 458)
+++ trunk/libocfs2/expanddir.c	2004-12-04 01:51:08 UTC (rev 459)
@@ -47,7 +47,6 @@
 {
 	errcode_t ret = 0;
 	ocfs2_cached_inode *cinode = NULL;
-	ocfs2_dinode *inode;
 	uint64_t used_blks;
 	uint64_t totl_blks;
 	uint64_t new_blk;
@@ -67,12 +66,11 @@
 	if (ret)
 		goto bail;
 
-	inode = cinode->ci_inode;
 	/* This relies on the fact that i_size of a directory is a
 	 * multiple of blocksize */
-	used_blks = inode->i_size >>
+	used_blks = cinode->ci_inode->i_size >>
 	       			OCFS2_RAW_SB(fs->fs_super)->s_blocksize_bits;
-	totl_blks = ocfs2_clusters_to_blocks(fs, inode->i_clusters);
+	totl_blks = ocfs2_clusters_to_blocks(fs, cinode->ci_inode->i_clusters);
 
 	if (used_blks >= totl_blks) {
 		ocfs2_free_cached_inode(fs, cinode);
@@ -124,7 +122,7 @@
 	}
 
 	/* increase the size */
-	inode->i_size += fs->fs_blocksize;
+	cinode->ci_inode->i_size += fs->fs_blocksize;
 
 	/* update the size of the inode */
 	ret = ocfs2_write_cached_inode(fs, cinode);



More information about the Ocfs2-tools-commits mailing list