Skip to content

xfs: condense dfops and automatic relogging

Brian Foster linux-xfs 2 versions – In review

Get series with b4
b4 am [email protected]

Versions newest first · linked by author and title

  1. v2 Latest15 patches 9 repliesIn review
  2. v115 patches 40 repliesSuperseded

Changes in v2 from the cover letter

- Add Reviewed-by tags.
- Rename container transaction for intent log recovery, add comment.
- More error checks in automatic dfops relogging.
- Assert and warn checks for permanent transaction with deferred ops.
- Function renames/refactors for on-stack pending dfops list patch.
- Drop unnecessary xfs_mount param from tracepoints with transaction.
v1: https://marc.info/?l=linux-xfs&m=153296912912425&w=2

Patches in v2 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/15xfs: refactor internal dfops initializationfs/xfs/xfs_trans.c+9 -101 reply
2/15xfs: use transaction for intent recovery instead of raw dfopsfs/xfs/xfs_bmap_item.c fs/xfs/xfs_bmap_item.h fs/xfs/xfs_log_recover.c +2 more+43 -381 reply
3/15xfs: remove unused __xfs_defer_cancel() internal helperfs/xfs/libxfs/xfs_defer.c fs/xfs/libxfs/xfs_defer.h fs/xfs/xfs_trans.c +1 more+4 -130 replies
4/15xfs: pass transaction to dfops reset/move helpersfs/xfs/libxfs/xfs_defer.c fs/xfs/libxfs/xfs_defer.h fs/xfs/xfs_bmap_item.c +3 more+19 -140 replies
5/15xfs: replace dop_low with transaction flagfs/xfs/libxfs/xfs_bmap.c fs/xfs/libxfs/xfs_bmap_btree.c fs/xfs/libxfs/xfs_defer.c +5 more+36 -300 replies
6/15xfs: add missing defer ijoins for held inodesfs/xfs/libxfs/xfs_bmap.c fs/xfs/xfs_bmap_util.c fs/xfs/xfs_inode.c +2 more+7 -00 replies
7/15xfs: automatic dfops buffer reloggingfs/xfs/libxfs/xfs_attr.c fs/xfs/libxfs/xfs_defer.c fs/xfs/libxfs/xfs_defer.h +2 more+26 -361 reply
8/15xfs: automatic dfops inode reloggingfs/xfs/libxfs/xfs_attr.c fs/xfs/libxfs/xfs_attr_remote.c fs/xfs/libxfs/xfs_bmap.c +8 more+21 -751 reply
9/15xfs: drop dop param from xfs_defer_op_type ->finish_item() callbackfs/xfs/libxfs/xfs_bmap.c fs/xfs/libxfs/xfs_bmap.h fs/xfs/libxfs/xfs_defer.c +10 more+23 -340 replies
10/15xfs: clean out superfluous dfops dop params/varsfs/xfs/libxfs/xfs_defer.c fs/xfs/libxfs/xfs_defer.h+22 -231 reply
11/15xfs: cancel dfops on xfs_defer_finish() errorfs/xfs/libxfs/xfs_attr.c fs/xfs/libxfs/xfs_attr_remote.c fs/xfs/libxfs/xfs_defer.c +5 more+21 -240 replies
12/15xfs: replace xfs_defer_ops ->dop_pending with on-stack listfs/xfs/libxfs/xfs_defer.c fs/xfs/libxfs/xfs_defer.h fs/xfs/xfs_trace.h +2 more+64 -744 replies
13/15xfs: pass transaction to xfs_defer_add()fs/xfs/libxfs/xfs_alloc.c fs/xfs/libxfs/xfs_bmap.c fs/xfs/libxfs/xfs_bmap.h +12 more+158 -1991 reply
14/15xfs: always defer agfl block freesfs/xfs/libxfs/xfs_alloc.c+2 -90 replies
15/15xfs: fold dfops into the transactionfs/xfs/libxfs/xfs_bmap.c fs/xfs/libxfs/xfs_btree.h fs/xfs/libxfs/xfs_da_btree.h +9 more+46 -961 reply

Reviews trailers per patch

All 15 patches have a Reviewed-by or Acked-by.

PatchChristoph HellwigDarrick J. Wong
1/15R-b R-b
2/15R-b R-b
3/15R-b R-b
4/15R-b R-b
5/15R-b R-b
6/15R-b R-b
7/15R-b R-b
8/15R-b R-b
9/15R-b R-b
10/15R-b R-b
11/15R-b R-b
12/15R-b R-b R-b R-b
13/15R-b R-b
14/15R-b R-b
15/15R-b R-b R-b R-b

Trailers given in replies are filled; those carried in the patches from earlier versions are outlined with dashes.

Read the v2 thread

Cover letter [PATCH v2 00/15] xfs: condense dfops and automatic relogging

Hi all,

Here's v2 of the condense dfops patches. This has mostly minor changes such as extra error checks, comments and cleanups.

Thoughts, reviews, flames appreciated.

Brian

v2:
- Add Reviewed-by tags.
- Rename container transaction for intent log recovery, add comment.
- More error checks in automatic dfops relogging.
- Assert and warn checks for permanent transaction with deferred ops.
- Function renames/refactors for on-stack pending dfops list patch.
- Drop unnecessary xfs_mount param from tracepoints with transaction.
v1: https://marc.info/?l=linux-xfs&m=153296912912425&w=2

Brian Foster (15):
xfs: refactor internal dfops initialization
xfs: use transaction for intent recovery instead of raw dfops
xfs: remove unused __xfs_defer_cancel() internal helper
xfs: pass transaction to dfops reset/move helpers
xfs: replace dop_low with transaction flag
xfs: add missing defer ijoins for held inodes
xfs: automatic dfops buffer relogging
xfs: automatic dfops inode relogging
xfs: drop dop param from xfs_defer_op_type ->finish_item() callback
xfs: clean out superfluous dfops dop params/vars
xfs: cancel dfops on xfs_defer_finish() error
xfs: replace xfs_defer_ops ->dop_pending with on-stack list
xfs: pass transaction to xfs_defer_add()
xfs: always defer agfl block frees
xfs: fold dfops into the transaction

 fs/xfs/libxfs/xfs_alloc.c       |  18 +-
 fs/xfs/libxfs/xfs_attr.c        |  26 +--
 fs/xfs/libxfs/xfs_attr_remote.c |   6 +-
 fs/xfs/libxfs/xfs_bmap.c        |  93 ++++-----
 fs/xfs/libxfs/xfs_bmap.h        |  25 ++-
 fs/xfs/libxfs/xfs_bmap_btree.c  |   6 +-
 fs/xfs/libxfs/xfs_btree.h       |   1 -
 fs/xfs/libxfs/xfs_da_btree.h    |   1 -
 fs/xfs/libxfs/xfs_defer.c       | 322 ++++++++++++++------------------
 fs/xfs/libxfs/xfs_defer.h       |  26 +--
 fs/xfs/libxfs/xfs_dir2.c        |   2 -
 fs/xfs/libxfs/xfs_dir2.h        |   1 -
 fs/xfs/libxfs/xfs_ialloc.c      |  25 +--
 fs/xfs/libxfs/xfs_refcount.c    |  76 ++++----
 fs/xfs/libxfs/xfs_refcount.h    |  25 ++-
 fs/xfs/libxfs/xfs_rmap.c        |  53 +++---
 fs/xfs/libxfs/xfs_rmap.h        |  22 +--
 fs/xfs/libxfs/xfs_shared.h      |  12 ++
 fs/xfs/xfs_bmap_item.c          |  20 +-
 fs/xfs/xfs_bmap_item.h          |   3 +-
 fs/xfs/xfs_bmap_util.c          |  18 +-
 fs/xfs/xfs_dquot.c              |   3 +-
 fs/xfs/xfs_filestream.c         |   3 +-
 fs/xfs/xfs_inode.c              |   3 +-
 fs/xfs/xfs_inode.h              |   1 -
 fs/xfs/xfs_log_recover.c        |  51 ++---
 fs/xfs/xfs_refcount_item.c      |  30 ++-
 fs/xfs/xfs_refcount_item.h      |   3 +-
 fs/xfs/xfs_reflink.c            |  33 ++--
 fs/xfs/xfs_symlink.c            |   1 -
 fs/xfs/xfs_trace.h              |  51 ++---
 fs/xfs/xfs_trans.c              |  39 ++--
 fs/xfs/xfs_trans.h              |  28 +--
 fs/xfs/xfs_trans_bmap.c         |   6 +-
 fs/xfs/xfs_trans_extfree.c      |   2 -
 fs/xfs/xfs_trans_refcount.c     |   6 +-
 fs/xfs/xfs_trans_rmap.c         |   1 -
 37 files changed, 434 insertions(+), 608 deletions(-)
Signature · 1 line
2.17.1