[GIT PULL] gfs2 fixes for 5.16
From: Andreas Gruenbacher
Date: Tue Nov 02 2021 - 10:51:27 EST
Hi Linus,
please consider pulling the following gfs2 fixes for 5.16. These are on
top of the memory map + page fault fixes from my first pull request
earlier today.
Thanks,
Andreas
The following changes since commit b01b2d72da25c000aeb124bc78daf3fb998be2b6:
gfs2: Fix mmap + page fault deadlocks for direct I/O (2021-10-25 08:42:14 +0200)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/gfs2/linux-gfs2.git tags/gfs2-v5.15-rc5-fixes
for you to fetch changes up to e34e6f8133b8c783a44c235b843e9046e55adbf0:
gfs2: Fix unused value warning in do_gfs2_set_flags() (2021-10-25 08:42:20 +0200)
----------------------------------------------------------------
Changes in gfs2:
* Fix a locking order inversion between the inode and iopen glocks in
gfs2_inode_lookup.
* Implement proper queuing of glock holders for glocks that require
instantiation (like reading an inode or bitmap blocks from disk).
Before, multiple glock holders could race with each other and
half-initialized objects could be exposed; the GL_SKIP flag further
exacerbated this problem.
* Fix a rare deadlock between inode lookup / creation and remote delete
work.
* Fix a rare scheduling-while-atomic bug in dlm during glock hash table
walks.
* Various other minor fixes and cleanups.
----------------------------------------------------------------
Alexander Aring (1):
gfs2: check context in gfs2_glock_put
Andreas Gruenbacher (4):
gfs2: Save ip from gfs2_glock_nq_init
gfs2: Remove 'first' trace_gfs2_promote argument
gfs2: Cancel remote delete work asynchronously
gfs2: Fix glock_hash_walk bugs
Bob Peterson (15):
gfs2: remove redundant check in gfs2_rgrp_go_lock
gfs2: Add GL_SKIP holder flag to dump_holder
gfs2: move GL_SKIP check from glops to do_promote
gfs2: Switch some BUG_ON to GLOCK_BUG_ON for debug
gfs2: Allow append and immutable bits to coexist
gfs2: dequeue iopen holder in gfs2_inode_lookup error
gfs2: dump glocks from gfs2_consist_OBJ_i
gfs2: change go_lock to go_instantiate
gfs2: re-factor function do_promote
gfs2: further simplify do_promote
gfs2: split glock instantiation off from do_promote
gfs2: fix GL_SKIP node_scope problems
gfs2: Eliminate GIF_INVALID flag
gfs2: remove RDF_UPTODATE flag
gfs2: set glock object after nq
Tim Gardner (1):
gfs2: Fix unused value warning in do_gfs2_set_flags()
fs/gfs2/file.c | 11 +---
fs/gfs2/glock.c | 163 +++++++++++++++++++++++++++++++++++----------------
fs/gfs2/glock.h | 14 ++++-
fs/gfs2/glops.c | 29 ++++-----
fs/gfs2/incore.h | 6 +-
fs/gfs2/inode.c | 12 ++--
fs/gfs2/rgrp.c | 70 ++++++++++------------
fs/gfs2/rgrp.h | 2 +-
fs/gfs2/super.c | 4 +-
fs/gfs2/trace_gfs2.h | 9 +--
fs/gfs2/util.c | 2 +
11 files changed, 186 insertions(+), 136 deletions(-)