[PATCH v5 0/2] avoid xfs transaction reservation recursion
From: Yafang Shao <hidden>
Date: 2020-08-19 02:25:08
Also in:
linux-fsdevel, linux-xfs
This patchset avoids transaction reservation recursion by reintroducing
the discarded PF_FSTRANS in a new way, suggested by Dave. In this new
implementation, four new helpers are introduced, which are
xfs_trans_context_{set, clear, update} and fstrans_context_active,
suggested by Dave. And re-using the task->journal_info to indicates
whehter the task is in fstrans or not, suggested by Willy
Patch #1 is picked from Willy's patchset "Overhaul memalloc_no*"[1]
[1] https://lore.kernel.org/linux-mm/20200625113122.7540-1-willy@infradead.org/ (local)
v5:
- pick one of Willy's patch
- introduce four new helpers, per Dave
v4:
- retitle from "xfs: introduce task->in_fstrans for transaction reservation recursion protection"
- reuse current->journal_info, per Willy
Matthew Wilcox (Oracle) (1):
mm: Add become_kswapd and restore_kswapd
Yafang Shao (1):
xfs: avoid transaction reservation recursion
fs/iomap/buffered-io.c | 4 ++--
fs/xfs/libxfs/xfs_btree.c | 14 ++++++++------
fs/xfs/xfs_aops.c | 5 +++--
fs/xfs/xfs_linux.h | 4 ----
fs/xfs/xfs_trans.c | 19 +++++++++----------
fs/xfs/xfs_trans.h | 23 +++++++++++++++++++++++
include/linux/iomap.h | 7 +++++++
include/linux/sched/mm.h | 28 ++++++++++++++++++++++++++++
mm/vmscan.c | 16 +---------------
9 files changed, 81 insertions(+), 39 deletions(-)
--
2.18.1