瀏覽代碼

[GFS2] NFS filehandle check

File handle checking error found in '07 NFS connectathon. The fh_type
and fh_len are not necessarily identical. Some of the client machines
could fail mount with stale filehandle without this patch.

Signed-off-by: S. Wendy Cheng <wcheng@redhat.com>
Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Wendy Cheng 18 年之前
父節點
當前提交
a7d2b2bdc9
共有 1 個文件被更改,包括 1 次插入4 次删除
  1. 1 4
      fs/gfs2/ops_export.c

+ 1 - 4
fs/gfs2/ops_export.c

@@ -38,14 +38,11 @@ static struct dentry *gfs2_decode_fh(struct super_block *sb,
 	struct gfs2_fh_obj fh_obj;
 	struct gfs2_inum_host *this, parent;
 
-	if (fh_type != fh_len)
-		return NULL;
-
 	this 		= &fh_obj.this;
 	fh_obj.imode 	= DT_UNKNOWN;
 	memset(&parent, 0, sizeof(struct gfs2_inum));
 
-	switch (fh_type) {
+	switch (fh_len) {
 	case GFS2_LARGE_FH_SIZE:
 		parent.no_formal_ino = ((u64)be32_to_cpu(fh[4])) << 32;
 		parent.no_formal_ino |= be32_to_cpu(fh[5]);