diff --git a/fs/gfs2/inode.c b/fs/gfs2/inode.c index 9ed7c05410658d5550c94b64af857b3d3a5ab049..e4ba380b286a6cd91d4289280e3b5b25d14fda4d 100644 --- a/fs/gfs2/inode.c +++ b/fs/gfs2/inode.c @@ -1002,7 +1002,8 @@ static void init_dinode(struct gfs2_inode *dip, struct gfs2_glock *gl, gfs2_buffer_clear_tail(dibh, sizeof(struct gfs2_dinode)); di = (struct gfs2_dinode *)dibh->b_data; - di->di_num = *inum; + di->di_num.no_formal_ino = cpu_to_be64(inum->no_formal_ino); + di->di_num.no_addr = cpu_to_be64(inum->no_addr); di->di_mode = cpu_to_be32(mode); di->di_uid = cpu_to_be32(uid); di->di_gid = cpu_to_be32(gid);