Re: [PATCH 15/42] fat: Sync and invalidate metadata buffers from fat_evict_inode()

OGAWA Hirofumi <[email protected]> Sun, 29 Mar 2026 22:55:09 +0900
Newsgroups gmane.linux.kernel.aio.general,gmane.linux.file-systems,gmane.linux.block,gmane.comp.file-systems.ext4,gmane.linux.kernel.mm
Message-ID <[email protected]>
Jan Kara <[email protected]> writes:

> There are only very few filesystems using generic metadata buffer head
> tracking and everybody is paying the overhead. When we remove this
> tracking for inode reclaim code .evict will start to see inodes with
> metadata buffers attached so write them out and prune them.
>
> Signed-off-by: Jan Kara <[email protected]>
> ---
>  fs/fat/inode.c | 4 +++-
>  1 file changed, 3 insertions(+), 1 deletion(-)
>
> diff --git a/fs/fat/inode.c b/fs/fat/inode.c
> index 3cc5fb01afa1..ce88602b0d57 100644
> --- a/fs/fat/inode.c
> +++ b/fs/fat/inode.c
> @@ -657,8 +657,10 @@ static void fat_evict_inode(struct inode *inode)
>  	if (!inode->i_nlink) {
>  		inode->i_size = 0;
>  		fat_truncate_blocks(inode, 0);
> -	} else
> +	} else {
> +		sync_mapping_buffers(inode->i_mapping);

Hm, why do we have to add this here? For FAT, if buffers are still
dirty, buffers will be flushed via bdev flush?

Thanks.

>  		fat_free_eofblocks(inode);
> +	}
>  
>  	invalidate_inode_buffers(inode);
>  	clear_inode(inode);

-- 
OGAWA Hirofumi <[email protected]>

--
To unsubscribe, send a message with 'unsubscribe linux-aio' in
the body to [email protected].  For more info on Linux AIO,
see: http://www.kvack.org/aio/
Don't email: <a href=mailto:"[email protected]">[email protected]</a>