[Cluster-devel] cluster/gfs-kernel/src/gfs ops_export.c super. ...
rpeterso at sourceware.org
rpeterso at sourceware.org
Fri Oct 13 19:57:08 UTC 2006
CVSROOT: /cvs/cluster
Module name: cluster
Changes by: rpeterso at sourceware.org 2006-10-13 19:57:07
Modified files:
gfs-kernel/src/gfs: ops_export.c super.c super.h
Log message:
This is the fix for bugzilla bug 210587: Oops in gfs_get_dentry
via NFS. The gfs file system, when called by NFS, was sometimes
referencing the vestigial license file, causing the segfault.
Patches:
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/ops_export.c.diff?cvsroot=cluster&r1=1.7&r2=1.8
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/super.c.diff?cvsroot=cluster&r1=1.21&r2=1.22
http://sourceware.org/cgi-bin/cvsweb.cgi/cluster/gfs-kernel/src/gfs/super.h.diff?cvsroot=cluster&r1=1.3&r2=1.4
--- cluster/gfs-kernel/src/gfs/ops_export.c 2006/07/10 23:22:34 1.7
+++ cluster/gfs-kernel/src/gfs/ops_export.c 2006/10/13 19:57:07 1.8
@@ -309,8 +309,7 @@
if (!cookie->formal_ino ||
cookie->formal_ino == sdp->sd_jiinode->i_num.no_formal_ino ||
cookie->formal_ino == sdp->sd_riinode->i_num.no_formal_ino ||
- cookie->formal_ino == sdp->sd_qinode->i_num.no_formal_ino ||
- cookie->formal_ino == sdp->sd_linode->i_num.no_formal_ino)
+ cookie->formal_ino == sdp->sd_qinode->i_num.no_formal_ino)
return ERR_PTR(-EINVAL);
inum.no_formal_ino = cookie->formal_ino;
--- cluster/gfs-kernel/src/gfs/super.c 2006/08/09 20:28:51 1.21
+++ cluster/gfs-kernel/src/gfs/super.c 2006/10/13 19:57:07 1.22
@@ -651,45 +651,6 @@
}
/**
- * gfs_get_linode - Read in the special (hidden) license inode
- * @sdp: The GFS superblock
- *
- * If one is not on-disk already, create a new one.
- * Does not read in file contents, just the dinode.
- *
- * Returns: errno
- */
-
-int
-gfs_get_linode(struct gfs_sbd *sdp)
-{
- struct gfs_holder i_gh;
- int error;
-
- /* Create, if not on-disk already */
- if (!sdp->sd_sb.sb_license_di.no_formal_ino) {
- error = gfs_alloc_linode(sdp);
- if (error)
- return error;
- }
-
- error = gfs_glock_nq_num(sdp,
- sdp->sd_sb.sb_license_di.no_formal_ino,
- &gfs_inode_glops,
- LM_ST_SHARED, GL_LOCAL_EXCL,
- &i_gh);
- if (error)
- return error;
-
- error = gfs_inode_get(i_gh.gh_gl, &sdp->sd_sb.sb_license_di,
- CREATE, &sdp->sd_linode);
-
- gfs_glock_dq_uninit(&i_gh);
-
- return error;
-}
-
-/**
* gfs_make_fs_rw - Turn a Read-Only FS into a Read-Write one
* @sdp: the filesystem
*
--- cluster/gfs-kernel/src/gfs/super.h 2006/07/10 23:22:34 1.3
+++ cluster/gfs-kernel/src/gfs/super.h 2006/10/13 19:57:07 1.4
@@ -37,7 +37,6 @@
int gfs_get_riinode(struct gfs_sbd *sdp);
int gfs_get_rootinode(struct gfs_sbd *sdp);
int gfs_get_qinode(struct gfs_sbd *sdp);
-int gfs_get_linode(struct gfs_sbd *sdp);
int gfs_make_fs_rw(struct gfs_sbd *sdp);
int gfs_make_fs_ro(struct gfs_sbd *sdp);
More information about the Cluster-devel
mailing list