[Ocfs2-commits] mfasheh commits r833 - branches/nooin/src

svn-commits at oss.oracle.com svn-commits at oss.oracle.com
Thu Apr 1 14:33:40 CST 2004


Author: mfasheh
Date: 2004-04-01 14:33:38 -0600 (Thu, 01 Apr 2004)
New Revision: 833

Modified:
   branches/nooin/src/inode.c
   branches/nooin/src/super.c
Log:
* initialize the inode private flags field when we create a new one.
* fix a potential memory leak allocating them in read_inode.



Modified: branches/nooin/src/inode.c
===================================================================
--- branches/nooin/src/inode.c	2004-04-01 18:13:18 UTC (rev 832)
+++ branches/nooin/src/inode.c	2004-04-01 20:33:38 UTC (rev 833)
@@ -347,7 +347,9 @@
 	LOG_TRACE_ARGS("osb = %x\n", osb);
 	if (inode->i_ino == OCFS_ROOT_INODE_NUMBER) {
 		LOG_TRACE_ARGS("Populating root inode (i_ino = %lu)\n", inode->i_ino);
-		inode->u.generic_ip = kmem_cache_alloc(OcfsGlobalCtxt.inode_cache, GFP_NOFS);
+		if (!inode->u.generic_ip)
+			inode->u.generic_ip = kmem_cache_alloc(
+				OcfsGlobalCtxt.inode_cache, GFP_NOFS);
 		if (!inode->u.generic_ip) {
 			/* How can we recover gracefully? */
 			LOG_ERROR_STR("unable to allocate private data for inode");
@@ -451,7 +453,9 @@
 	sb = inode->i_sb;
 	osb = (ocfs_super *) OCFS_GENERIC_SB_P(sb);
 	if (inode->i_ino == OCFS_ROOT_INODE_NUMBER) {
-		inode->u.generic_ip = kmem_cache_alloc(OcfsGlobalCtxt.inode_cache, GFP_NOFS);
+		if (!inode->u.generic_ip)
+			inode->u.generic_ip = kmem_cache_alloc(
+				OcfsGlobalCtxt.inode_cache, GFP_NOFS);
 		if (!inode->u.generic_ip) {
 			/* How can we recover gracefully? */
 			LOG_ERROR_STR("unable to allocate private data for inode");

Modified: branches/nooin/src/super.c
===================================================================
--- branches/nooin/src/super.c	2004-04-01 18:13:18 UTC (rev 832)
+++ branches/nooin/src/super.c	2004-04-01 20:33:38 UTC (rev 833)
@@ -750,6 +750,7 @@
 		i->oin = NULL;
 		i->voteoff = 0;
 		i->feoff = 0;
+		i->flags = 0;
 		atomic_set(&i->i_clean_buffer_seq, 0);
          }	
 }



More information about the Ocfs2-commits mailing list