[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