[PATCH 3/6] udf: update inode's iblock count when allocating new block

From: Namjae Jeon
Date: Tue Oct 09 2012 - 11:09:31 EST


From: Namjae Jeon <namjae.jeon@xxxxxxxxxxx>

Currently, du will show wrong block count. This patch fix it.

Signed-off-by: Namjae Jeon <namjae.jeon@xxxxxxxxxxx>
Signed-off-by: Ashish Sangwan <a.sangwan@xxxxxxxxxxx>
---
fs/udf/inode.c | 2 ++
1 file changed, 2 insertions(+)

diff --git a/fs/udf/inode.c b/fs/udf/inode.c
index 8266f2e..76a1f57 100644
--- a/fs/udf/inode.c
+++ b/fs/udf/inode.c
@@ -775,6 +775,8 @@ static sector_t inode_getblk(struct inode *inode, sector_t block,
if (isBeyondEOF)
iinfo->i_lenExtents += inode->i_sb->s_blocksize;
}
+ /* update inode's iblocks */
+ inode->i_blocks += (1 << (inode->i_sb->s_blocksize_bits - 9));

/* if the extent the requsted block is located in contains multiple
* blocks, split the extent into at most three extents. blocks prior
--
1.7.9.5

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/