mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-10-22 23:13:01 +02:00
f2fs: add parameter @len to f2fs_invalidate_internal_cache()
New function can process some consecutive blocks at a time. Signed-off-by: Yi Sun <yi.sun@unisoc.com> Reviewed-by: Chao Yu <chao@kernel.org> Signed-off-by: Jaegeuk Kim <jaegeuk@kernel.org>
This commit is contained in:
parent
3d56fbb1f0
commit
d217b5cea4
|
@ -1414,7 +1414,7 @@ static int __allocate_data_block(struct dnode_of_data *dn, int seg_type)
|
|||
return err;
|
||||
|
||||
if (GET_SEGNO(sbi, old_blkaddr) != NULL_SEGNO)
|
||||
f2fs_invalidate_internal_cache(sbi, old_blkaddr);
|
||||
f2fs_invalidate_internal_cache(sbi, old_blkaddr, 1);
|
||||
|
||||
f2fs_update_data_blkaddr(dn, dn->data_blkaddr);
|
||||
return 0;
|
||||
|
|
|
@ -4764,10 +4764,10 @@ static inline void f2fs_truncate_meta_inode_pages(struct f2fs_sb_info *sbi,
|
|||
}
|
||||
|
||||
static inline void f2fs_invalidate_internal_cache(struct f2fs_sb_info *sbi,
|
||||
block_t blkaddr)
|
||||
block_t blkaddr, unsigned int len)
|
||||
{
|
||||
f2fs_truncate_meta_inode_pages(sbi, blkaddr, 1);
|
||||
f2fs_invalidate_compress_pages_range(sbi, blkaddr, 1);
|
||||
f2fs_truncate_meta_inode_pages(sbi, blkaddr, len);
|
||||
f2fs_invalidate_compress_pages_range(sbi, blkaddr, len);
|
||||
}
|
||||
|
||||
#define EFSBADCRC EBADMSG /* Bad CRC detected */
|
||||
|
|
|
@ -1415,7 +1415,7 @@ static int move_data_block(struct inode *inode, block_t bidx,
|
|||
page_address(mpage), PAGE_SIZE);
|
||||
f2fs_put_page(mpage, 1);
|
||||
|
||||
f2fs_invalidate_internal_cache(fio.sbi, fio.old_blkaddr);
|
||||
f2fs_invalidate_internal_cache(fio.sbi, fio.old_blkaddr, 1);
|
||||
|
||||
set_page_dirty(fio.encrypted_page);
|
||||
if (clear_page_dirty_for_io(fio.encrypted_page))
|
||||
|
|
|
@ -2537,7 +2537,7 @@ void f2fs_invalidate_blocks(struct f2fs_sb_info *sbi, block_t addr)
|
|||
if (addr == NEW_ADDR || addr == COMPRESS_ADDR)
|
||||
return;
|
||||
|
||||
f2fs_invalidate_internal_cache(sbi, addr);
|
||||
f2fs_invalidate_internal_cache(sbi, addr, 1);
|
||||
|
||||
/* add it into sit main buffer */
|
||||
down_write(&sit_i->sentry_lock);
|
||||
|
@ -3857,7 +3857,7 @@ static void do_write_page(struct f2fs_summary *sum, struct f2fs_io_info *fio)
|
|||
goto out;
|
||||
}
|
||||
if (GET_SEGNO(fio->sbi, fio->old_blkaddr) != NULL_SEGNO)
|
||||
f2fs_invalidate_internal_cache(fio->sbi, fio->old_blkaddr);
|
||||
f2fs_invalidate_internal_cache(fio->sbi, fio->old_blkaddr, 1);
|
||||
|
||||
/* writeout dirty page into bdev */
|
||||
f2fs_submit_page_write(fio);
|
||||
|
@ -4049,7 +4049,7 @@ void f2fs_do_replace_block(struct f2fs_sb_info *sbi, struct f2fs_summary *sum,
|
|||
update_sit_entry(sbi, new_blkaddr, 1);
|
||||
}
|
||||
if (GET_SEGNO(sbi, old_blkaddr) != NULL_SEGNO) {
|
||||
f2fs_invalidate_internal_cache(sbi, old_blkaddr);
|
||||
f2fs_invalidate_internal_cache(sbi, old_blkaddr, 1);
|
||||
if (!from_gc)
|
||||
update_segment_mtime(sbi, old_blkaddr, 0);
|
||||
update_sit_entry(sbi, old_blkaddr, -1);
|
||||
|
|
Loading…
Reference in New Issue
Block a user