aboutsummaryrefslogtreecommitdiffstats
path: root/fs/gfs2/ondisk.c
diff options
context:
space:
mode:
authorSteven Whitehouse <swhiteho@redhat.com>2006-11-01 20:09:14 -0500
committerSteven Whitehouse <swhiteho@redhat.com>2006-11-30 10:34:26 -0500
commita9583c7983cbba9726bfe64ee46613d654fc9e26 (patch)
tree37a23321b8254499e48f93bc65d946ab47547fa4 /fs/gfs2/ondisk.c
parent[GFS2] Shrink gfs2_inode (6) - di_atime/di_mtime/di_ctime (diff)
downloadlinux-dev-a9583c7983cbba9726bfe64ee46613d654fc9e26.tar.xz
linux-dev-a9583c7983cbba9726bfe64ee46613d654fc9e26.zip
[GFS2] Shrink gfs2_inode (7) - di_payload_format
This is almost never used. Its there for backward compatibility with GFS1. It doesn't need its own field since it can always be calculated from the inode mode & flags. This saves a bit more space in the gfs2_inode. Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>
Diffstat (limited to 'fs/gfs2/ondisk.c')
-rw-r--r--fs/gfs2/ondisk.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/fs/gfs2/ondisk.c b/fs/gfs2/ondisk.c
index 82003e872a37..b2baba5c50b7 100644
--- a/fs/gfs2/ondisk.c
+++ b/fs/gfs2/ondisk.c
@@ -176,9 +176,10 @@ void gfs2_dinode_out(const struct gfs2_inode *ip, void *buf)
str->di_generation = cpu_to_be64(di->di_generation);
str->di_flags = cpu_to_be32(di->di_flags);
- str->di_payload_format = cpu_to_be32(di->di_payload_format);
str->di_height = cpu_to_be16(di->di_height);
-
+ str->di_payload_format = cpu_to_be32(S_ISDIR(ip->i_inode.i_mode) &&
+ !(ip->i_di.di_flags & GFS2_DIF_EXHASH) ?
+ GFS2_FORMAT_DE : 0);
str->di_depth = cpu_to_be16(di->di_depth);
str->di_entries = cpu_to_be32(di->di_entries);
@@ -197,7 +198,6 @@ void gfs2_dinode_print(const struct gfs2_inode *ip)
printk(KERN_INFO " di_goal_data = %llu\n", (unsigned long long)di->di_goal_data);
pv(di, di_flags, "0x%.8X");
- pv(di, di_payload_format, "%u");
pv(di, di_height, "%u");
pv(di, di_depth, "%u");