Skip to contentSkip to conversation

affs: use aligned-endian get/put helpers

PATCH In review Harvey Harrison 1 participant 1 message May 20, 2008 Affs file system

lore
Share & tools
lore
#0 lore raw

PATCH 11/21 affs: use aligned-endian get/put helpers

---
 fs/affs/bitmap.c |   14 +++++++-------
 fs/affs/super.c  |    2 +-
 2 files changed, 8 insertions(+), 8 deletions(-)
fs/affs/bitmap.c +7 -7
index c4a5ad0..3df7327 100644
@@ -92,14 +92,14 @@ affs_free_block(struct super_block *sb, u32 block)
 	data = (__be32 *)bh->b_data + bit / 32 + 1;
 
 	/* mark block free */
-	tmp = be32_to_cpu(*data);
+	tmp = get_be32(*data);
 	if (tmp & mask)
 		goto err_free;
 	*data = cpu_to_be32(tmp | mask);
 
 	/* fix checksum */
-	tmp = be32_to_cpu(*(__be32 *)bh->b_data);
-	*(__be32 *)bh->b_data = cpu_to_be32(tmp - mask);
+	tmp = get_be32(bh->b_data);
+	put_be32(tmp - mask, bh->b_data);
 
 	mark_buffer_dirty(bh);
 	sb->s_dirt = 1;
@@ -208,7 +208,7 @@ find_bmap_bit:
 	mask = ~0UL << (bit & 31);
 	blk &= ~31UL;
 
-	tmp = be32_to_cpu(*data);
+	tmp = get_be32(data);
 	if (tmp & mask)
 		goto find_bit;
 
@@ -221,7 +221,7 @@ find_bmap_bit:
 			 */
 			goto find_bmap;
 	} while (!*data);
-	tmp = be32_to_cpu(*data);
+	tmp = get_be32(data);
 	mask = ~0;
 
 find_bit:
@@ -243,8 +243,8 @@ find_bit:
 	*data = cpu_to_be32(tmp & ~mask);
 
 	/* fix checksum */
-	tmp = be32_to_cpu(*(__be32 *)bh->b_data);
-	*(__be32 *)bh->b_data = cpu_to_be32(tmp + mask);
+	tmp = get_be32(bh->b_data);
+	put_be32(tmp + mask, bh->b_data);
 
 	mark_buffer_dirty(bh);
 	sb->s_dirt = 1;
fs/affs/super.c +1 -1
index d214837..cd7c1d4 100644
@@ -379,7 +379,7 @@ got_root:
 	}
 	memcpy(sig, boot_bh->b_data, 4);
 	brelse(boot_bh);
-	chksum = be32_to_cpu(*(__be32 *)sig);
+	chksum = get_be32(sig);
 
 	/* Dircache filesystems are compatible with non-dircache ones
 	 * when reading. As long as they aren't supported, writing is
Signature · 1 line
1.5.5.1.570.g26b5e