• Namjae Jeon's avatar
    f2fs: optimise the truncate_data_blocks_range() range · d7cc950b
    Namjae Jeon authored
    The function truncate_data_blocks_range() decrements the valid
    block count of inode via dec_valid_block_count(). Since this
    function updates the i_blocks field of inode, we can update this
    field once we have calculated total the number of blocks
    to be freed.
    
    Therefore we can decrement valid blocks outside of the for loop.
    
    	if (nr_free) {
    +		dec_valid_block_count(sbi, dn->inode, nr_free);
     		set_page_dirty(dn->node_page);
     		sync_inode_page(dn);
     	}
    
    'nr_free' tells the total number of blocks freed. So, we can
    just directly pass this value to dec_valid_block_count() and update
    the i_blocks.
    Signed-off-by: default avatarNamjae Jeon <namjae.jeon@samsung.com>
    Signed-off-by: default avatarPankaj Kumar <pankaj.km@samsung.com>
    Signed-off-by: default avatarJaegeuk Kim <jaegeuk.kim@samsung.com>
    d7cc950b
file.c 15.3 KB