Messages in this thread | | | From | Andreas Gruenbacher <> | Subject | [GIT PULL] gfs2 fixes for 5.16 | Date | Tue, 2 Nov 2021 15:51:16 +0100 |
| |
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(-)
| |