mbox series

[v15,00/37] xfsprogs: Delayed Attributes

Message ID 20210218164512.4659-1-allison.henderson@oracle.com (mailing list archive)
Headers show
Series xfsprogs: Delayed Attributes | expand

Message

Allison Henderson Feb. 18, 2021, 4:44 p.m. UTC
Hi all,

This set applies the corresponding changes for delayed attributes to
xfsprogs. I will pick up the reviews from the kernel side series and mirror
them here.  This set also includes some patches from the kernel side that have
not yet been ported. This set also includes patches needed for the user space
cli and log printing routines

Lastly, two patches ported from kernel side needed some minor modications to
avoid compile errors:

xfsprogs: Introduce error injection to allocate only minlen size extents for files
  Amended io/inject.c with error tag name to avoid compiler errors

xfsprogs: Introduce error injection to reduce maximum inode fork extent count
  Amended io/inject.c with error tag name to avoid compiler errors


This series can also be viewed on github here:
https://github.com/allisonhenderson/xfs_work/tree/delay_ready_attrs_xfsprogs_v15

And also the extended delayed attribute and parent pointer series:
https://github.com/allisonhenderson/xfs_work/tree/delay_ready_attrs_xfsprogs_v15_extended

Thanks all!
Allison

Allison Collins (2):
  xfsprogs: Add helper xfs_attr_node_remove_step
  xfsprogs: Add xfs_attr_set_deferred and xfs_attr_remove_deferred

Allison Henderson (18):
  xfsprogs: Add xfs_attr_node_remove_cleanup
  xfsprogs: Hoist transaction handling in xfs_attr_node_remove_step
  xfsprogs: Hoist xfs_attr_set_shortform
  xfsprogs: Add helper xfs_attr_set_fmt
  xfsprogs: Separate xfs_attr_node_addname and
    xfs_attr_node_addname_work
  xfsprogs: Add helper xfs_attr_node_addname_find_attr
  xfsprogs: Hoist xfs_attr_node_addname
  xfsprogs: Hoist xfs_attr_leaf_addname
  xfsprogs: Hoist node transaction handling
  xfsprogs: Add delay ready attr remove routines
  xfsprogs: Add delay ready attr set routines
  xfsprogs: Add state machine tracepoints
  xfsprogs: Rename __xfs_attr_rmtval_remove
  xfsprogs: Set up infastructure for deferred attribute operations
  xfsprogs: Skip flip flags for delayed attrs
  xfsprogs: Remove unused xfs_attr_*_args
  xfsprogs: Add delayed attributes error tag
  xfsprogs: Merge xfs_delattr_context into xfs_attr_item

Chandan Babu R (15):
  xfsprogs: Add helper for checking per-inode extent count overflow
  xfsprogs: Check for extent overflow when trivally adding a new extent
  xfsprogs: Check for extent overflow when punching a hole
  xfsprogs: Check for extent overflow when adding dir entries
  xfsprogs: Check for extent overflow when removing dir entries
  xfsprogs: Check for extent overflow when renaming dir entries
  xfsprogs: Check for extent overflow when adding/removing xattrs
  xfsprogs: Check for extent overflow when writing to unwritten extent
  xfsprogs: Check for extent overflow when moving extent from cow to
    data fork
  xfsprogs: Check for extent overflow when swapping extents
  xfsprogs: Introduce error injection to reduce maximum inode fork
    extent count
  xfsprogs: Remove duplicate assert statement in xfs_bmap_btalloc()
  xfsprogs: Compute bmap extent alignments in a separate function
  xfsprogs: Process allocated extent in a separate function
  xfsprogs: Introduce error injection to allocate only minlen size
    extents for files

Darrick J. Wong (1):
  xfsprogs: fix an ABBA deadlock in xfs_rename

Zorro Lang (1):
  libxfs: expose inobtcount in xfs geometry

 include/libxfs.h         |   1 +
 include/xfs_trace.h      |   7 +
 io/inject.c              |   3 +
 libxfs/defer_item.c      | 128 +++++++
 libxfs/libxfs_priv.h     |   1 +
 libxfs/xfs_alloc.c       |  50 +++
 libxfs/xfs_alloc.h       |   3 +
 libxfs/xfs_attr.c        | 967 ++++++++++++++++++++++++++++++-----------------
 libxfs/xfs_attr.h        | 366 +++++++++++++++++-
 libxfs/xfs_attr_leaf.c   |   5 +-
 libxfs/xfs_attr_remote.c | 127 ++++---
 libxfs/xfs_attr_remote.h |   7 +-
 libxfs/xfs_bmap.c        | 285 ++++++++++----
 libxfs/xfs_defer.c       |   1 +
 libxfs/xfs_defer.h       |   2 +
 libxfs/xfs_dir2.h        |   2 -
 libxfs/xfs_dir2_sf.c     |   2 +-
 libxfs/xfs_errortag.h    |   8 +-
 libxfs/xfs_fs.h          |   1 +
 libxfs/xfs_inode_fork.c  |  27 ++
 libxfs/xfs_inode_fork.h  |  63 +++
 libxfs/xfs_log_format.h  |  43 ++-
 libxfs/xfs_sb.c          |   2 +
 23 files changed, 1620 insertions(+), 481 deletions(-)