From: Stephen Rothwell Date: Wed, 1 Sep 2021 23:39:48 +0000 (+1000) Subject: Merge remote-tracking branch 'f2fs/dev' X-Git-Url: https://www.infradead.org/git/?a=commitdiff_plain;h=2255c4e8814aa383ccc2496bdc87e0f231cb5d37;p=users%2Fjedix%2Flinux-maple.git Merge remote-tracking branch 'f2fs/dev' --- 2255c4e8814aa383ccc2496bdc87e0f231cb5d37 diff --cc fs/f2fs/data.c index eb222b35edefa,41d29382eceda..f4fd6c246c9a9 --- a/fs/f2fs/data.c +++ b/fs/f2fs/data.c @@@ -3187,12 -3262,12 +3262,12 @@@ static void f2fs_write_failed(struct in /* In the fs-verity case, f2fs_end_enable_verity() does the truncate */ if (to > i_size && !f2fs_verity_in_progress(inode)) { down_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]); - filemap_invalidate_lock(mapping); - down_write(&F2FS_I(inode)->i_mmap_sem); ++ filemap_invalidate_lock(inode->i_mapping); truncate_pagecache(inode, i_size); f2fs_truncate_blocks(inode, i_size, true); - filemap_invalidate_unlock(mapping); - up_write(&F2FS_I(inode)->i_mmap_sem); ++ filemap_invalidate_unlock(inode->i_mapping); up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]); } } diff --cc fs/f2fs/file.c index 1ff333755721e,f30b841d4e5a9..9c8ef33bd8d32 --- a/fs/f2fs/file.c +++ b/fs/f2fs/file.c @@@ -1092,16 -1115,15 +1112,15 @@@ static int punch_hole(struct inode *ino blk_end = (loff_t)pg_end << PAGE_SHIFT; down_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]); - filemap_invalidate_lock(mapping); - down_write(&F2FS_I(inode)->i_mmap_sem); ++ filemap_invalidate_lock(inode->i_mapping); - truncate_inode_pages_range(mapping, blk_start, - blk_end - 1); + truncate_pagecache_range(inode, blk_start, blk_end - 1); f2fs_lock_op(sbi); ret = f2fs_truncate_hole(inode, pg_start, pg_end); f2fs_unlock_op(sbi); - filemap_invalidate_unlock(mapping); - up_write(&F2FS_I(inode)->i_mmap_sem); ++ filemap_invalidate_unlock(inode->i_mapping); up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]); } } @@@ -3473,8 -3494,8 +3492,8 @@@ static int f2fs_release_compress_blocks released_blocks += ret; } - up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]); - up_write(&F2FS_I(inode)->i_mmap_sem); + filemap_invalidate_unlock(inode->i_mapping); + up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]); out: inode_unlock(inode); @@@ -3626,8 -3647,8 +3645,8 @@@ static int f2fs_reserve_compress_blocks reserved_blocks += ret; } - up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]); - up_write(&F2FS_I(inode)->i_mmap_sem); + filemap_invalidate_unlock(inode->i_mapping); + up_write(&F2FS_I(inode)->i_gc_rwsem[WRITE]); if (ret >= 0) { clear_inode_flag(inode, FI_COMPRESS_RELEASED);