summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorngkaho1234 <ngkaho1234@gmail.com>2015-10-24 08:37:33 +0000
committerngkaho1234 <ngkaho1234@gmail.com>2015-10-24 08:37:33 +0000
commite9ef4e35940f806cd40959d5b641d6687fa93b17 (patch)
treee1ef27025401abd447410d173cf873c0ecb165fc
parent1cd9e263f29e4f5d596fc17515d014a721ac2f11 (diff)
ext4_extent_full.c: very minor code optimisations on checksum handling
-rw-r--r--lwext4/ext4_extent_full.c9
1 files changed, 6 insertions, 3 deletions
diff --git a/lwext4/ext4_extent_full.c b/lwext4/ext4_extent_full.c
index 2fe5016..cf98635 100644
--- a/lwext4/ext4_extent_full.c
+++ b/lwext4/ext4_extent_full.c
@@ -348,10 +348,9 @@ static void ext4_extent_block_csum_set(struct ext4_inode_ref *inode_ref,
static int ext4_ext_dirty(struct ext4_inode_ref *inode_ref,
struct ext4_extent_path *path)
{
- if (path->block.lb_id) {
- ext4_extent_block_csum_set(inode_ref, path->header);
+ if (path->block.lb_id)
path->block.dirty = true;
- } else
+ else
inode_ref->dirty = true;
return EOK;
@@ -371,6 +370,10 @@ static void ext4_ext_drop_refs(struct ext4_inode_ref *inode_ref,
for (i = 0; i <= depth; i++, path++) {
if (path->block.lb_id) {
+ if (path->block.dirty)
+ ext4_extent_block_csum_set(inode_ref,
+ path->header);
+
ext4_block_set(inode_ref->fs->bdev, &path->block);
}
}