aboutsummaryrefslogtreecommitdiffstats
path: root/fs/gfs2/ops_export.c
diff options
context:
space:
mode:
authorSteven Whitehouse <swhiteho@redhat.com>2006-09-04 16:16:45 -0400
committerSteven Whitehouse <swhiteho@redhat.com>2006-09-04 16:16:45 -0400
commit5acd3967347dab361d296d39ba19f8241507ef65 (patch)
tree3385eefb13ff86b6515dcbc10b1696e349d346b6 /fs/gfs2/ops_export.c
parent26c1a57412b59a2284a521c711d9e9105bb6ad23 (diff)
[GFS2] Some further style changes
Introduce a couple of new constants which make the NFS filehandle sizes that GFS2 uses a bit clearer. Also fix one or two minor issues as per Jan Engelhardt's sixth email. Cc: Jan Engelhardt <jengelh@linux01.gwdg.de> Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2/ops_export.c')
-rw-r--r--fs/gfs2/ops_export.c11
1 files changed, 6 insertions, 5 deletions
diff --git a/fs/gfs2/ops_export.c b/fs/gfs2/ops_export.c
index cf826893dd5f..4b8c6a9893e4 100644
--- a/fs/gfs2/ops_export.c
+++ b/fs/gfs2/ops_export.c
@@ -45,13 +45,13 @@ static struct dentry *gfs2_decode_fh(struct super_block *sb,
45 memset(&parent, 0, sizeof(struct gfs2_inum)); 45 memset(&parent, 0, sizeof(struct gfs2_inum));
46 46
47 switch (fh_type) { 47 switch (fh_type) {
48 case 10: 48 case GFS2_LARGE_FH_SIZE:
49 parent.no_formal_ino = ((u64)be32_to_cpu(fh[4])) << 32; 49 parent.no_formal_ino = ((u64)be32_to_cpu(fh[4])) << 32;
50 parent.no_formal_ino |= be32_to_cpu(fh[5]); 50 parent.no_formal_ino |= be32_to_cpu(fh[5]);
51 parent.no_addr = ((u64)be32_to_cpu(fh[6])) << 32; 51 parent.no_addr = ((u64)be32_to_cpu(fh[6])) << 32;
52 parent.no_addr |= be32_to_cpu(fh[7]); 52 parent.no_addr |= be32_to_cpu(fh[7]);
53 fh_obj.imode = be32_to_cpu(fh[8]); 53 fh_obj.imode = be32_to_cpu(fh[8]);
54 case 4: 54 case GFS2_SMALL_FH_SIZE:
55 this->no_formal_ino = ((u64)be32_to_cpu(fh[0])) << 32; 55 this->no_formal_ino = ((u64)be32_to_cpu(fh[0])) << 32;
56 this->no_formal_ino |= be32_to_cpu(fh[1]); 56 this->no_formal_ino |= be32_to_cpu(fh[1]);
57 this->no_addr = ((u64)be32_to_cpu(fh[2])) << 32; 57 this->no_addr = ((u64)be32_to_cpu(fh[2])) << 32;
@@ -72,7 +72,8 @@ static int gfs2_encode_fh(struct dentry *dentry, __u32 *fh, int *len,
72 struct super_block *sb = inode->i_sb; 72 struct super_block *sb = inode->i_sb;
73 struct gfs2_inode *ip = GFS2_I(inode); 73 struct gfs2_inode *ip = GFS2_I(inode);
74 74
75 if (*len < 4 || (connectable && *len < 10)) 75 if (*len < GFS2_SMALL_FH_SIZE ||
76 (connectable && *len < GFS2_LARGE_FH_SIZE))
76 return 255; 77 return 255;
77 78
78 fh[0] = ip->i_num.no_formal_ino >> 32; 79 fh[0] = ip->i_num.no_formal_ino >> 32;
@@ -83,7 +84,7 @@ static int gfs2_encode_fh(struct dentry *dentry, __u32 *fh, int *len,
83 fh[2] = cpu_to_be32(fh[2]); 84 fh[2] = cpu_to_be32(fh[2]);
84 fh[3] = ip->i_num.no_addr & 0xFFFFFFFF; 85 fh[3] = ip->i_num.no_addr & 0xFFFFFFFF;
85 fh[3] = cpu_to_be32(fh[3]); 86 fh[3] = cpu_to_be32(fh[3]);
86 *len = 4; 87 *len = GFS2_SMALL_FH_SIZE;
87 88
88 if (!connectable || inode == sb->s_root->d_inode) 89 if (!connectable || inode == sb->s_root->d_inode)
89 return *len; 90 return *len;
@@ -105,7 +106,7 @@ static int gfs2_encode_fh(struct dentry *dentry, __u32 *fh, int *len,
105 106
106 fh[8] = cpu_to_be32(inode->i_mode); 107 fh[8] = cpu_to_be32(inode->i_mode);
107 fh[9] = 0; /* pad to double word */ 108 fh[9] = 0; /* pad to double word */
108 *len = 10; 109 *len = GFS2_LARGE_FH_SIZE;
109 110
110 iput(inode); 111 iput(inode);
111 112