GFS2: Move generation number into "proper" part of inode
Steven Whitehouse [Mon, 3 Nov 2008 13:39:46 +0000 (13:39 +0000)]
This moves the generation number from the gfs2_dinode_host
into the gfs2_inode structure. Eventually the plan is to get
rid of the gfs2_dinode_host structure completely.

Signed-off-by: Steven Whitehouse <swhiteho@redhat.com>

fs/gfs2/incore.h
fs/gfs2/inode.c

index f566ec1..4ff1d7e 100644 (file)
@@ -235,7 +235,6 @@ enum {
 
 struct gfs2_dinode_host {
        u64 di_size;            /* number of bytes in file */
-       u64 di_generation;      /* generation number for NFS */
        u32 di_flags;           /* GFS2_DIF_... */
        /* These only apply to directories  */
        u32 di_entries;         /* The number of entries in the directory */
@@ -246,6 +245,7 @@ struct gfs2_inode {
        struct inode i_inode;
        u64 i_no_addr;
        u64 i_no_formal_ino;
+       u64 i_generation;
        unsigned long i_flags;          /* GIF_... */
 
        struct gfs2_dinode_host i_di; /* To be replaced by ref to block */
index bf4676d..9d97f69 100644 (file)
@@ -286,7 +286,7 @@ static int gfs2_dinode_in(struct gfs2_inode *ip, const void *buf)
        ip->i_inode.i_ctime.tv_nsec = be32_to_cpu(str->di_ctime_nsec);
 
        ip->i_goal = be64_to_cpu(str->di_goal_meta);
-       di->di_generation = be64_to_cpu(str->di_generation);
+       ip->i_generation = be64_to_cpu(str->di_generation);
 
        di->di_flags = be32_to_cpu(str->di_flags);
        gfs2_set_inode_flags(&ip->i_inode);
@@ -1263,7 +1263,7 @@ void gfs2_dinode_out(const struct gfs2_inode *ip, void *buf)
 
        str->di_goal_meta = cpu_to_be64(ip->i_goal);
        str->di_goal_data = cpu_to_be64(ip->i_goal);
-       str->di_generation = cpu_to_be64(di->di_generation);
+       str->di_generation = cpu_to_be64(ip->i_generation);
 
        str->di_flags = cpu_to_be32(di->di_flags);
        str->di_height = cpu_to_be16(ip->i_height);