This is a note to let you know that I've just added the patch titled Revert "mm/filemap: avoid buffered read/write race to read inconsistent data" to the 6.6-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: revert-mm-filemap-avoid-buffered-read-write-race-to-.patch and it can be found in the queue-6.6 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. commit d87bcb0965636a9b665231560ce147d06a7a18d8 Author: Baokun Li <libaokun1@xxxxxxxxxx> Date: Wed Jan 24 22:28:56 2024 +0800 Revert "mm/filemap: avoid buffered read/write race to read inconsistent data" [ Upstream commit 4b944f8ef99641d5af287c7d9df91d20ef5d3e88 ] This reverts commit e2c27b803bb6 ("mm/filemap: avoid buffered read/write race to read inconsistent data"). After making the i_size_read/write helpers be smp_load_acquire/store_release(), it is already guaranteed that changes to page contents are visible before we see increased inode size, so the extra smp_rmb() in filemap_read() can be removed. Signed-off-by: Baokun Li <libaokun1@xxxxxxxxxx> Link: https://lore.kernel.org/r/20240124142857.4146716-3-libaokun1@xxxxxxxxxx Signed-off-by: Christian Brauner <brauner@xxxxxxxxxx> Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx> diff --git a/mm/filemap.c b/mm/filemap.c index e6c112f3a211f..cd028f3be6026 100644 --- a/mm/filemap.c +++ b/mm/filemap.c @@ -2694,15 +2694,6 @@ ssize_t filemap_read(struct kiocb *iocb, struct iov_iter *iter, goto put_folios; end_offset = min_t(loff_t, isize, iocb->ki_pos + iter->count); - /* - * Pairs with a barrier in - * block_write_end()->mark_buffer_dirty() or other page - * dirtying routines like iomap_write_end() to ensure - * changes to page contents are visible before we see - * increased inode size. - */ - smp_rmb(); - /* * Once we start copying data, we don't want to be touching any * cachelines that might be contended: