[GFS2] gfs2_dinode_host fields are host-endian [2/70]

From: Steven Whitehouse
Date: Thu Nov 30 2006 - 07:12:35 EST


>From 5c6edb576f3800723bb65dbfaff82517089e32d0 Mon Sep 17 00:00:00 2001
From: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
Date: Fri, 13 Oct 2006 20:33:01 -0400
Subject: [PATCH] [GFS2] gfs2_dinode_host fields are host-endian

Annotated scalar fields, dropped unused ones. Note that
it's not at all obvious that we want to convert all of them
to host-endian...

Signed-off-by: Al Viro <viro@xxxxxxxxxxxxxxxxxx>
Signed-off-by: Steven Whitehouse <swhiteho@xxxxxxxxxx>
---
fs/gfs2/incore.h | 2 +-
include/linux/gfs2_ondisk.h | 47 ++++++++++++++++++-------------------------
2 files changed, 21 insertions(+), 28 deletions(-)

diff --git a/fs/gfs2/incore.h b/fs/gfs2/incore.h
index 118dc69..1c876e0 100644
--- a/fs/gfs2/incore.h
+++ b/fs/gfs2/incore.h
@@ -229,7 +229,7 @@ struct gfs2_inode {
unsigned long i_flags; /* GIF_... */

u64 i_vn;
- struct gfs2_dinode i_di; /* To be replaced by ref to block */
+ struct gfs2_dinode_host i_di; /* To be replaced by ref to block */

struct gfs2_glock *i_gl; /* Move into i_gh? */
struct gfs2_holder i_iopen_gh;
diff --git a/include/linux/gfs2_ondisk.h b/include/linux/gfs2_ondisk.h
index f334b4b..0e67a89 100644
--- a/include/linux/gfs2_ondisk.h
+++ b/include/linux/gfs2_ondisk.h
@@ -275,41 +275,34 @@ struct gfs2_dinode_host {

struct gfs2_inum di_num;

- __be32 di_mode; /* mode of file */
- __be32 di_uid; /* owner's user id */
- __be32 di_gid; /* owner's group id */
- __be32 di_nlink; /* number of links to this file */
- __be64 di_size; /* number of bytes in file */
- __be64 di_blocks; /* number of blocks in file */
- __be64 di_atime; /* time last accessed */
- __be64 di_mtime; /* time last modified */
- __be64 di_ctime; /* time last changed */
- __be32 di_major; /* device major number */
- __be32 di_minor; /* device minor number */
+ __u32 di_mode; /* mode of file */
+ __u32 di_uid; /* owner's user id */
+ __u32 di_gid; /* owner's group id */
+ __u32 di_nlink; /* number of links to this file */
+ __u64 di_size; /* number of bytes in file */
+ __u64 di_blocks; /* number of blocks in file */
+ __u64 di_atime; /* time last accessed */
+ __u64 di_mtime; /* time last modified */
+ __u64 di_ctime; /* time last changed */
+ __u32 di_major; /* device major number */
+ __u32 di_minor; /* device minor number */

/* This section varies from gfs1. Padding added to align with
* remainder of dinode
*/
- __be64 di_goal_meta; /* rgrp to alloc from next */
- __be64 di_goal_data; /* data block goal */
- __be64 di_generation; /* generation number for NFS */
+ __u64 di_goal_meta; /* rgrp to alloc from next */
+ __u64 di_goal_data; /* data block goal */
+ __u64 di_generation; /* generation number for NFS */

- __be32 di_flags; /* GFS2_DIF_... */
- __be32 di_payload_format; /* GFS2_FORMAT_... */
- __u16 __pad1; /* Was ditype in gfs1 */
- __be16 di_height; /* height of metadata */
- __u32 __pad2; /* Unused incarnation number from gfs1 */
+ __u32 di_flags; /* GFS2_DIF_... */
+ __u32 di_payload_format; /* GFS2_FORMAT_... */
+ __u16 di_height; /* height of metadata */

/* These only apply to directories */
- __u16 __pad3; /* Padding */
- __be16 di_depth; /* Number of bits in the table */
- __be32 di_entries; /* The number of entries in the directory */
-
- struct gfs2_inum __pad4; /* Unused even in current gfs1 */
+ __u16 di_depth; /* Number of bits in the table */
+ __u32 di_entries; /* The number of entries in the directory */

- __be64 di_eattr; /* extended attribute block number */
-
- __u8 di_reserved[56];
+ __u64 di_eattr; /* extended attribute block number */
};

/*
--
1.4.1



-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/