From: Jan Kara <jack@suse.cz>
To: Linus Torvalds <torvalds@linux-foundation.org>
Cc: linux-fsdevel@vger.kernel.org, linux-mm@kvack.org
Subject: [GIT PULL] Hole punch vs page cache filling races fixes for 5.15-rc1
Date: Wed, 25 Aug 2021 16:51:18 +0200 [thread overview]
Message-ID: <20210825145118.GI14620@quack2.suse.cz> (raw)
Hello Linus,
this is the last early pull request for the coming merge window. Could you
please pull from
git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs.git hole_punch_for_v5.15-rc1
to get patches that fix races leading to possible data corruption or stale
data exposure in multiple filesystems when hole punching races with
operations such as readahead. This is the series I was sending for the last
merge window but with your objection fixed - now filemap_fault() has been
modified to take invalidate_lock only when we need to create new page in
the page cache and / or bring it uptodate (see updated commit 730633f0b7f
"mm: Protect operations adding pages to page cache with invalidate_lock").
There are some conflicts of this series with changes in f2fs and folio
trees. The resolution is mostly obvious but I've pushed out suggested merge
(taken from Stephen Rothwell) to:
git://git.kernel.org/pub/scm/linux/kernel/git/jack/linux-fs.git hole_punch_fixes_merge
Top of the tree is 7882c55ef64a. The full shortlog is:
Jan Kara (13):
mm: Fix comments mentioning i_mutex
documentation: Sync file_operations members with reality
mm: Protect operations adding pages to page cache with invalidate_lock
mm: Add functions to lock invalidate_lock for two mappings
ext4: Convert to use mapping->invalidate_lock
ext2: Convert to using invalidate_lock
xfs: Convert to use invalidate_lock
xfs: Convert double locking of MMAPLOCK to use VFS helpers
zonefs: Convert to using invalidate_lock
f2fs: Convert to using invalidate_lock
fuse: Convert to using invalidate_lock
ceph: Fix race between hole punch and page fault
cifs: Fix race between hole punch and page fault
Pavel Reichl (1):
xfs: Refactor xfs_isilocked()
Randy Dunlap (1):
filesystems/locking: fix Malformed table warning
The diffstat is
Documentation/filesystems/locking.rst | 79 ++++++++++++------
fs/ceph/addr.c | 9 ++-
fs/ceph/file.c | 2 +
fs/cifs/smb2ops.c | 2 +
fs/ext2/ext2.h | 11 ---
fs/ext2/file.c | 7 +-
fs/ext2/inode.c | 12 +--
fs/ext2/super.c | 3 -
fs/ext4/ext4.h | 10 ---
fs/ext4/extents.c | 25 +++---
fs/ext4/file.c | 13 +--
fs/ext4/inode.c | 47 ++++-------
fs/ext4/ioctl.c | 4 +-
fs/ext4/super.c | 13 ++-
fs/ext4/truncate.h | 8 +-
fs/f2fs/data.c | 8 +-
fs/f2fs/f2fs.h | 1 -
fs/f2fs/file.c | 62 +++++++--------
fs/f2fs/super.c | 1 -
fs/fuse/dax.c | 50 ++++++------
fs/fuse/dir.c | 11 +--
fs/fuse/file.c | 10 +--
fs/fuse/fuse_i.h | 7 --
fs/fuse/inode.c | 1 -
fs/inode.c | 2 +
fs/xfs/xfs_bmap_util.c | 15 ++--
fs/xfs/xfs_file.c | 13 +--
fs/xfs/xfs_inode.c | 121 ++++++++++++++--------------
fs/xfs/xfs_inode.h | 3 +-
fs/xfs/xfs_super.c | 2 -
fs/zonefs/super.c | 23 ++----
fs/zonefs/zonefs.h | 7 +-
include/linux/fs.h | 39 +++++++++
mm/filemap.c | 145 ++++++++++++++++++++++++++++------
mm/madvise.c | 2 +-
mm/memory-failure.c | 2 +-
mm/readahead.c | 2 +
mm/rmap.c | 41 +++++-----
mm/shmem.c | 20 ++---
mm/truncate.c | 9 ++-
40 files changed, 482 insertions(+), 360 deletions(-)
Thanks
Honza
--
Jan Kara <jack@suse.com>
SUSE Labs, CR
next reply other threads:[~2021-08-25 14:51 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2021-08-25 14:51 Jan Kara [this message]
2021-08-30 17:40 ` [GIT PULL] Hole punch vs page cache filling races fixes for 5.15-rc1 pr-tracker-bot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20210825145118.GI14620@quack2.suse.cz \
--to=jack@suse.cz \
--cc=linux-fsdevel@vger.kernel.org \
--cc=linux-mm@kvack.org \
--cc=torvalds@linux-foundation.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).