diff mbox

[U-Boot,1/2] ext4fs: use EXT2_BLOCK_SIZE instead of fs->blksz

Message ID 52D3C70C.2070200@nsn.com
State Accepted
Delegated to: Tom Rini
Headers show

Commit Message

Ionut Nicu Jan. 13, 2014, 10:59 a.m. UTC
Using fs->blksz in ext4fs_get_extent_block() is not
correct since fs->blksz is not initialized on the
read path. Use EXT2_BLOCK_SIZE() instead which will
produce the desired output.

Signed-off-by: Ionut Nicu <ioan.nicu.ext@nsn.com>
Signed-off-by: Mathias Rulf <mathias.rulf@nsn.com>
---
 fs/ext4/ext4_common.c |    4 ++--
 1 files changed, 2 insertions(+), 2 deletions(-)

Comments

Tom Rini Jan. 20, 2014, 10:59 p.m. UTC | #1
On Mon, Jan 13, 2014 at 11:59:24AM +0100, Ionut Nicu wrote:

> Using fs->blksz in ext4fs_get_extent_block() is not
> correct since fs->blksz is not initialized on the
> read path. Use EXT2_BLOCK_SIZE() instead which will
> produce the desired output.
> 
> Signed-off-by: Ionut Nicu <ioan.nicu.ext@nsn.com>
> Signed-off-by: Mathias Rulf <mathias.rulf@nsn.com>

Applied to u-boot/master, thanks!
diff mbox

Patch

diff --git a/fs/ext4/ext4_common.c b/fs/ext4/ext4_common.c
index 352943e..37b6c46 100644
--- a/fs/ext4/ext4_common.c
+++ b/fs/ext4/ext4_common.c
@@ -1414,7 +1414,7 @@  static struct ext4_extent_header *ext4fs_get_extent_block
 {
 	struct ext4_extent_idx *index;
 	unsigned long long block;
-	struct ext_filesystem *fs = get_fs();
+	int blksz = EXT2_BLOCK_SIZE(data);
 	int i;
 
 	while (1) {
@@ -1438,7 +1438,7 @@  static struct ext4_extent_header *ext4fs_get_extent_block
 		block = le16_to_cpu(index[i].ei_leaf_hi);
 		block = (block << 32) + le32_to_cpu(index[i].ei_leaf_lo);
 
-		if (ext4fs_devread((lbaint_t)block << log2_blksz, 0, fs->blksz,
+		if (ext4fs_devread((lbaint_t)block << log2_blksz, 0, blksz,
 				   buf))
 			ext_block = (struct ext4_extent_header *)buf;
 		else