[U-Boot] [PATCH] fs/reiserfs/reiserfs.c: Fix compiler warning

Anatolij Gustschin agust at denx.de
Mon Dec 12 14:16:17 CET 2011


Fix:
reiserfs.c: In function 'reiserfs_mount':
reiserfs.c:360:22: warning: dereferencing type-punned pointer
will break strict-aliasing rules [-Wstrict-aliasing]

Signed-off-by: Anatolij Gustschin <agust at denx.de>
---
Note:
 - checkpatch warnings intentionally not fixed to preserve
   coding style used in the file. Otherwise it would look
   ugly.

 fs/reiserfs/reiserfs.c |    4 +++-
 1 files changed, 3 insertions(+), 1 deletions(-)

diff --git a/fs/reiserfs/reiserfs.c b/fs/reiserfs/reiserfs.c
index d84fb20..efab8fa 100644
--- a/fs/reiserfs/reiserfs.c
+++ b/fs/reiserfs/reiserfs.c
@@ -282,6 +282,7 @@ reiserfs_mount (unsigned part_length)
 {
   struct reiserfs_super_block super;
   int superblock = REISERFS_DISK_OFFSET_IN_BYTES >> SECTOR_BITS;
+  char *cache;
 
   if (part_length < superblock + (sizeof (super) >> SECTOR_BITS)
       || ! reiserfs_devread (superblock, 0, sizeof (struct reiserfs_super_block),
@@ -357,7 +358,8 @@ reiserfs_mount (unsigned part_length)
   if (! block_read (sb_root_block(&super), 0, INFO->blocksize, (char*) ROOT))
     return 0;
 
-  INFO->tree_depth = __le16_to_cpu(BLOCKHEAD (ROOT)->blk_level);
+  cache = ROOT;
+  INFO->tree_depth = __le16_to_cpu(BLOCKHEAD (cache)->blk_level);
 
 #ifdef REISERDEBUG
   printf ("root read_in: block=%d, depth=%d\n",
-- 
1.7.1



More information about the U-Boot mailing list