diff options
| author | Alexander Viro <viro@www.linux.org.uk> | 2004-09-21 18:32:46 -0700 |
|---|---|---|
| committer | Linus Torvalds <torvalds@ppc970.osdl.org> | 2004-09-21 18:32:46 -0700 |
| commit | 6327be3548ad754d136da6da4fb9121e0044e143 (patch) | |
| tree | 1ddeaf29053712280a0c9e88c35bc08f4fd94653 | |
| parent | 9ac6b2af86f4454c508b48ad6981ba819e488ab1 (diff) | |
[PATCH] efs endianness annotations
Signed-off-by: Al Viro <viro@parcelfarce.linux.org.uk>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
| -rw-r--r-- | fs/efs/super.c | 7 | ||||
| -rw-r--r-- | include/linux/efs_dir.h | 4 | ||||
| -rw-r--r-- | include/linux/efs_fs_i.h | 24 | ||||
| -rw-r--r-- | include/linux/efs_fs_sb.h | 52 | ||||
| -rw-r--r-- | include/linux/efs_vh.h | 20 |
5 files changed, 54 insertions, 53 deletions
diff --git a/fs/efs/super.c b/fs/efs/super.c index e68044cffdb5..467e34b41f5c 100644 --- a/fs/efs/super.c +++ b/fs/efs/super.c @@ -121,7 +121,8 @@ module_exit(exit_efs_fs) static efs_block_t efs_validate_vh(struct volume_header *vh) { int i; - unsigned int cs, csum, *ui; + __be32 cs, *ui; + int csum; efs_block_t sblock = 0; /* shuts up gcc */ struct pt_types *pt_entry; int pt_type, slice = -1; @@ -135,8 +136,8 @@ static efs_block_t efs_validate_vh(struct volume_header *vh) { return 0; } - ui = ((unsigned int *) (vh + 1)) - 1; - for(csum = 0; ui >= ((unsigned int *) vh);) { + ui = ((__be32 *) (vh + 1)) - 1; + for(csum = 0; ui >= ((__be32 *) vh);) { cs = *ui--; csum += be32_to_cpu(cs); } diff --git a/include/linux/efs_dir.h b/include/linux/efs_dir.h index 3315241306e6..a09ec010569c 100644 --- a/include/linux/efs_dir.h +++ b/include/linux/efs_dir.h @@ -11,7 +11,7 @@ #define EFS_DIRBSIZE (1 << EFS_DIRBSIZE_BITS) struct efs_dentry { - unsigned int inode; + __be32 inode; unsigned char namelen; char name[3]; }; @@ -23,7 +23,7 @@ struct efs_dentry { #define EFS_DIRBLK_MAGIC 0xbeef /* moo */ struct efs_dir { - unsigned short magic; + __be16 magic; unsigned char firstused; unsigned char slots; diff --git a/include/linux/efs_fs_i.h b/include/linux/efs_fs_i.h index 64fe538acc88..617c474ca659 100644 --- a/include/linux/efs_fs_i.h +++ b/include/linux/efs_fs_i.h @@ -28,8 +28,8 @@ typedef union extent_u { } efs_extent; typedef struct edevs { - short odev; - unsigned int ndev; + __be16 odev; + __be32 ndev; } efs_devs; /* @@ -37,16 +37,16 @@ typedef struct edevs { * is exactly 128 bytes long. */ struct efs_dinode { - u_short di_mode; /* mode and type of file */ - short di_nlink; /* number of links to file */ - u_short di_uid; /* owner's user id */ - u_short di_gid; /* owner's group id */ - int32_t di_size; /* number of bytes in file */ - int32_t di_atime; /* time last accessed */ - int32_t di_mtime; /* time last modified */ - int32_t di_ctime; /* time created */ - uint32_t di_gen; /* generation number */ - short di_numextents; /* # of extents */ + __be16 di_mode; /* mode and type of file */ + __be16 di_nlink; /* number of links to file */ + __be16 di_uid; /* owner's user id */ + __be16 di_gid; /* owner's group id */ + __be32 di_size; /* number of bytes in file */ + __be32 di_atime; /* time last accessed */ + __be32 di_mtime; /* time last modified */ + __be32 di_ctime; /* time created */ + __be32 di_gen; /* generation number */ + __be16 di_numextents; /* # of extents */ u_char di_version; /* version of inode */ u_char di_spare; /* spare - used by AFS */ union di_addr { diff --git a/include/linux/efs_fs_sb.h b/include/linux/efs_fs_sb.h index 21d01d0d4d2e..c76088baef28 100644 --- a/include/linux/efs_fs_sb.h +++ b/include/linux/efs_fs_sb.h @@ -23,39 +23,39 @@ /* efs superblock on disk */ struct efs_super { - int32_t fs_size; /* size of filesystem, in sectors */ - int32_t fs_firstcg; /* bb offset to first cg */ - int32_t fs_cgfsize; /* size of cylinder group in bb's */ - short fs_cgisize; /* bb's of inodes per cylinder group */ - short fs_sectors; /* sectors per track */ - short fs_heads; /* heads per cylinder */ - short fs_ncg; /* # of cylinder groups in filesystem */ - short fs_dirty; /* fs needs to be fsck'd */ - int32_t fs_time; /* last super-block update */ - int32_t fs_magic; /* magic number */ + __be32 fs_size; /* size of filesystem, in sectors */ + __be32 fs_firstcg; /* bb offset to first cg */ + __be32 fs_cgfsize; /* size of cylinder group in bb's */ + __be16 fs_cgisize; /* bb's of inodes per cylinder group */ + __be16 fs_sectors; /* sectors per track */ + __be16 fs_heads; /* heads per cylinder */ + __be16 fs_ncg; /* # of cylinder groups in filesystem */ + __be16 fs_dirty; /* fs needs to be fsck'd */ + __be32 fs_time; /* last super-block update */ + __be32 fs_magic; /* magic number */ char fs_fname[6]; /* file system name */ char fs_fpack[6]; /* file system pack name */ - int32_t fs_bmsize; /* size of bitmap in bytes */ - int32_t fs_tfree; /* total free data blocks */ - int32_t fs_tinode; /* total free inodes */ - int32_t fs_bmblock; /* bitmap location. */ - int32_t fs_replsb; /* Location of replicated superblock. */ - int32_t fs_lastialloc; /* last allocated inode */ + __be32 fs_bmsize; /* size of bitmap in bytes */ + __be32 fs_tfree; /* total free data blocks */ + __be32 fs_tinode; /* total free inodes */ + __be32 fs_bmblock; /* bitmap location. */ + __be32 fs_replsb; /* Location of replicated superblock. */ + __be32 fs_lastialloc; /* last allocated inode */ char fs_spare[20]; /* space for expansion - MUST BE ZERO */ - int32_t fs_checksum; /* checksum of volume portion of fs */ + __be32 fs_checksum; /* checksum of volume portion of fs */ }; /* efs superblock information in memory */ struct efs_sb_info { - int32_t fs_magic; /* superblock magic number */ - int32_t fs_start; /* first block of filesystem */ - int32_t first_block; /* first data block in filesystem */ - int32_t total_blocks; /* total number of blocks in filesystem */ - int32_t group_size; /* # of blocks a group consists of */ - int32_t data_free; /* # of free data blocks */ - int32_t inode_free; /* # of free inodes */ - short inode_blocks; /* # of blocks used for inodes in every grp */ - short total_groups; /* # of groups */ + __u32 fs_magic; /* superblock magic number */ + __u32 fs_start; /* first block of filesystem */ + __u32 first_block; /* first data block in filesystem */ + __u32 total_blocks; /* total number of blocks in filesystem */ + __u32 group_size; /* # of blocks a group consists of */ + __u32 data_free; /* # of free data blocks */ + __u32 inode_free; /* # of free inodes */ + __u16 inode_blocks; /* # of blocks used for inodes in every grp */ + __u16 total_groups; /* # of groups */ }; #endif /* __EFS_FS_SB_H__ */ diff --git a/include/linux/efs_vh.h b/include/linux/efs_vh.h index b9d7e4ddafc0..b3df61ef2eb2 100644 --- a/include/linux/efs_vh.h +++ b/include/linux/efs_vh.h @@ -17,26 +17,26 @@ struct volume_directory { char vd_name[VDNAMESIZE]; /* name */ - int vd_lbn; /* logical block number */ - int vd_nbytes; /* file length in bytes */ + __be32 vd_lbn; /* logical block number */ + __be32 vd_nbytes; /* file length in bytes */ }; struct partition_table { /* one per logical partition */ - int pt_nblks; /* # of logical blks in partition */ - int pt_firstlbn; /* first lbn of partition */ - int pt_type; /* use of partition */ + __be32 pt_nblks; /* # of logical blks in partition */ + __be32 pt_firstlbn; /* first lbn of partition */ + __be32 pt_type; /* use of partition */ }; struct volume_header { - int vh_magic; /* identifies volume header */ - short vh_rootpt; /* root partition number */ - short vh_swappt; /* swap partition number */ + __be32 vh_magic; /* identifies volume header */ + __be16 vh_rootpt; /* root partition number */ + __be16 vh_swappt; /* swap partition number */ char vh_bootfile[BFNAMESIZE]; /* name of file to boot */ char pad[48]; /* device param space */ struct volume_directory vh_vd[NVDIR]; /* other vol hdr contents */ struct partition_table vh_pt[NPARTAB]; /* device partition layout */ - int vh_csum; /* volume header checksum */ - int vh_fill; /* fill out to 512 bytes */ + __be32 vh_csum; /* volume header checksum */ + __be32 vh_fill; /* fill out to 512 bytes */ }; /* partition type sysv is used for EFS format CD-ROM partitions */ |
