[Cluster-devel] cluster/gfs-kernel/src/gfs ops_inode.c
wcheng at sourceware.org
wcheng at sourceware.org
Tue Jun 5 18:21:23 UTC 2007
CVSROOT: /cvs/cluster
Module name: cluster
Changes by: wcheng at sourceware.org 2007-06-05 18:21:23
Modified files:
gfs-kernel/src/gfs: ops_inode.c
Log message:
Bugzilla 242759:
Bump into this problem while debugging bug #236565 (GFS SPECsfs panic).
Apparently a minor oversight while adding new function into GFS for
RHEL5. GFS versions <= RHEL4 is immuned from this issue.
Upon memory pressure, VM starts to release inode cache entries that would
fail gfs iget. GFS1 flags this error as "ENOMEM" but returns from gfs_create
call without releasing the glock.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/ops_inode.c.diff?cvsroot=cluster&r1=1.17&r2=1.18
--- cluster/gfs-kernel/src/gfs/ops_inode.c 2007/06/05 18:15:51 1.17
+++ cluster/gfs-kernel/src/gfs/ops_inode.c 2007/06/05 18:21:22 1.18
@@ -151,9 +151,9 @@
gfs_inode_put(ip);
if (!inode)
- return -ENOMEM;
-
- error = gfs_security_init(dip, ip);
+ error = -ENOMEM;
+ else
+ error = gfs_security_init(dip, ip);
gfs_glock_dq_uninit(&d_gh);
gfs_glock_dq_uninit(&i_gh);
More information about the Cluster-devel
mailing list