mirror of
https://github.com/adulau/aha.git
synced 2024-12-28 03:36:19 +00:00
befs: annotate fs32 on tests for superblock endianness
Does compile-time byteswapping rather than runtime. Noticed by sparse: fs/befs/super.c:29:6: warning: cast to restricted __le32 fs/befs/super.c:29:6: warning: cast from restricted fs32 fs/befs/super.c:31:11: warning: cast to restricted __be32 fs/befs/super.c:31:11: warning: cast from restricted fs32 fs/befs/super.c:31:11: warning: cast to restricted __be32 fs/befs/super.c:31:11: warning: cast from restricted fs32 fs/befs/super.c:31:11: warning: cast to restricted __be32 fs/befs/super.c:31:11: warning: cast from restricted fs32 fs/befs/super.c:31:11: warning: cast to restricted __be32 fs/befs/super.c:31:11: warning: cast from restricted fs32 fs/befs/super.c:31:11: warning: cast to restricted __be32 fs/befs/super.c:31:11: warning: cast from restricted fs32 fs/befs/super.c:31:11: warning: cast to restricted __be32 fs/befs/super.c:31:11: warning: cast from restricted fs32 fs/befs/linuxvfs.c:811:7: warning: cast to restricted __le32 fs/befs/linuxvfs.c:811:7: warning: cast from restricted fs32 fs/befs/linuxvfs.c:812:7: warning: cast to restricted __be32 fs/befs/linuxvfs.c:812:7: warning: cast from restricted fs32 fs/befs/linuxvfs.c:812:7: warning: cast to restricted __be32 fs/befs/linuxvfs.c:812:7: warning: cast from restricted fs32 fs/befs/linuxvfs.c:812:7: warning: cast to restricted __be32 fs/befs/linuxvfs.c:812:7: warning: cast from restricted fs32 fs/befs/linuxvfs.c:812:7: warning: cast to restricted __be32 fs/befs/linuxvfs.c:812:7: warning: cast from restricted fs32 fs/befs/linuxvfs.c:812:7: warning: cast to restricted __be32 fs/befs/linuxvfs.c:812:7: warning: cast from restricted fs32 fs/befs/linuxvfs.c:812:7: warning: cast to restricted __be32 fs/befs/linuxvfs.c:812:7: warning: cast from restricted fs32 Signed-off-by: Harvey Harrison <harvey.harrison@gmail.com> Cc: "Sergey S. Kostyliov" <rathamahata@php4.ru> Cc: Al Viro <viro@zeniv.linux.org.uk> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
This commit is contained in:
parent
bd39597cbd
commit
152b95a1ed
3 changed files with 9 additions and 5 deletions
|
@ -55,8 +55,12 @@ enum super_flags {
|
||||||
};
|
};
|
||||||
|
|
||||||
#define BEFS_BYTEORDER_NATIVE 0x42494745
|
#define BEFS_BYTEORDER_NATIVE 0x42494745
|
||||||
|
#define BEFS_BYTEORDER_NATIVE_LE (__force fs32)cpu_to_le32(BEFS_BYTEORDER_NATIVE)
|
||||||
|
#define BEFS_BYTEORDER_NATIVE_BE (__force fs32)cpu_to_be32(BEFS_BYTEORDER_NATIVE)
|
||||||
|
|
||||||
#define BEFS_SUPER_MAGIC BEFS_SUPER_MAGIC1
|
#define BEFS_SUPER_MAGIC BEFS_SUPER_MAGIC1
|
||||||
|
#define BEFS_SUPER_MAGIC1_LE (__force fs32)cpu_to_le32(BEFS_SUPER_MAGIC1)
|
||||||
|
#define BEFS_SUPER_MAGIC1_BE (__force fs32)cpu_to_be32(BEFS_SUPER_MAGIC1)
|
||||||
|
|
||||||
/*
|
/*
|
||||||
* Flags of inode
|
* Flags of inode
|
||||||
|
|
|
@ -809,8 +809,8 @@ befs_fill_super(struct super_block *sb, void *data, int silent)
|
||||||
|
|
||||||
/* account for offset of super block on x86 */
|
/* account for offset of super block on x86 */
|
||||||
disk_sb = (befs_super_block *) bh->b_data;
|
disk_sb = (befs_super_block *) bh->b_data;
|
||||||
if ((le32_to_cpu(disk_sb->magic1) == BEFS_SUPER_MAGIC1) ||
|
if ((disk_sb->magic1 == BEFS_SUPER_MAGIC1_LE) ||
|
||||||
(be32_to_cpu(disk_sb->magic1) == BEFS_SUPER_MAGIC1)) {
|
(disk_sb->magic1 == BEFS_SUPER_MAGIC1_BE)) {
|
||||||
befs_debug(sb, "Using PPC superblock location");
|
befs_debug(sb, "Using PPC superblock location");
|
||||||
} else {
|
} else {
|
||||||
befs_debug(sb, "Using x86 superblock location");
|
befs_debug(sb, "Using x86 superblock location");
|
||||||
|
|
|
@ -26,10 +26,10 @@ befs_load_sb(struct super_block *sb, befs_super_block * disk_sb)
|
||||||
befs_sb_info *befs_sb = BEFS_SB(sb);
|
befs_sb_info *befs_sb = BEFS_SB(sb);
|
||||||
|
|
||||||
/* Check the byte order of the filesystem */
|
/* Check the byte order of the filesystem */
|
||||||
if (le32_to_cpu(disk_sb->fs_byte_order) == BEFS_BYTEORDER_NATIVE)
|
if (disk_sb->fs_byte_order == BEFS_BYTEORDER_NATIVE_LE)
|
||||||
befs_sb->byte_order = BEFS_BYTESEX_LE;
|
befs_sb->byte_order = BEFS_BYTESEX_LE;
|
||||||
else if (be32_to_cpu(disk_sb->fs_byte_order) == BEFS_BYTEORDER_NATIVE)
|
else if (disk_sb->fs_byte_order == BEFS_BYTEORDER_NATIVE_BE)
|
||||||
befs_sb->byte_order = BEFS_BYTESEX_BE;
|
befs_sb->byte_order = BEFS_BYTESEX_BE;
|
||||||
|
|
||||||
befs_sb->magic1 = fs32_to_cpu(sb, disk_sb->magic1);
|
befs_sb->magic1 = fs32_to_cpu(sb, disk_sb->magic1);
|
||||||
befs_sb->magic2 = fs32_to_cpu(sb, disk_sb->magic2);
|
befs_sb->magic2 = fs32_to_cpu(sb, disk_sb->magic2);
|
||||||
|
|
Loading…
Reference in a new issue