[PATCH v2 0/6] gfs2: Fix mmap + page fault deadlocks

From: Andreas Gruenbacher
Date: Sun Jul 18 2021 - 18:39:54 EST

Hi Linus et al.,

here's an update to the gfs2 mmap + page faults fix that implements
Linus's suggestion of disabling page faults while we're holding the
inode glock.

This passes fstests except for test generic/095, which fails due to an
independent bug in the iov_iter code. I'm currently trying to get
initial feedback from Al and Christoph on that.

Any feedback would be welcome.

Thanks a lot,

Andreas Gruenbacher (6):
iov_iter: Introduce fault_in_iov_iter helper
iomap: Fix iomap_dio_rw return value for page faults
gfs2: Add wrapper for iomap_file_buffered_write
gfs2: Fix mmap + page fault deadlocks for buffered I/O
iov_iter: Introduce ITER_FLAG_FAST_ONLY flag
gfs2: Fix mmap + page fault deadlocks for direct I/O

fs/gfs2/file.c | 79 ++++++++++++++++++++++++++++++++++++++++----
fs/iomap/direct-io.c | 2 ++
include/linux/mm.h | 3 ++
include/linux/uio.h | 16 +++++++--
lib/iov_iter.c | 62 +++++++++++++++++++++++++++++++---
mm/gup.c | 68 ++++++++++++++++++++++++++++++++++++++
6 files changed, 215 insertions(+), 15 deletions(-)