Hi all, This set applies the corresponding changes for delayed ready 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. They are not part of the delayed ready attr set, but they are required in order for the kernel side ports to seat correctly. This series can also be viewed on github here: https://github.com/allisonhenderson/xfs_work/tree/delay_ready_attrs_xfsprogs_v9 And also the extended delayed attribute and parent pointer series: https://github.com/allisonhenderson/xfs_work/tree/delay_ready_attrs_xfsprogs_v9_extended Thanks all! Allison Allison Collins (43): xfsprogs: remove the ATTR_INCOMPLETE flag xfsprogs: merge xfs_attr_remove into xfs_attr_set xfsprogs: remove the name == NULL check from xfs_attr_args_init xfsprogs: remove the MAXNAMELEN check from xfs_attr_args_init xfsprogs: turn xfs_da_args.value into a void pointer xfsprogs: pass an initialized xfs_da_args structure to xfs_attr_set xfsprogs: pass an initialized xfs_da_args to xfs_attr_get xfsprogs: remove the xfs_inode argument to xfs_attr_get_ilocked xfsprogs: remove ATTR_KERNOVAL xfsprogs: remove ATTR_ALLOC and XFS_DA_OP_ALLOCVAL xfsprogs: replace ATTR_KERNOTIME with XFS_DA_OP_NOTIME xfsprogs: factor out a xfs_attr_match helper xfsprogs: cleanup struct xfs_attr_list_context xfsprogs: remove the unused ATTR_ENTRY macro xfsprogs: move the legacy xfs_attr_list to xfs_ioctl.c xfsprogs: rename xfs_attr_list_int to xfs_attr_list xfsprogs: clean up the ATTR_REPLACE checks xfsprogs: clean up the attr flag confusion xfsprogs: embedded the attrlist cursor into struct xfs_attr_list_context xfsprogs: Add xfs_has_attr and subroutines xfsprogs: Check for -ENOATTR or -EEXIST xfsprogs: Factor out new helper functions xfs_attr_rmtval_set xfsprogs: Pull up trans handling in xfs_attr3_leaf_flipflags xfsprogs: Split apart xfs_attr_leaf_addname xfsprogs: Refactor xfs_attr_try_sf_addname xfsprogs: Pull up trans roll from xfs_attr3_leaf_setflag xfsprogs: Factor out xfs_attr_rmtval_invalidate xfsprogs: Pull up trans roll in xfs_attr3_leaf_clearflag xfsprogs: Add helper function __xfs_attr_rmtval_remove xfsprogs: Pull up xfs_attr_rmtval_invalidate xfsprogs: Add helper function xfs_attr_node_shrink xfsprogs: Remove unneeded xfs_trans_roll_inode calls xfsprogs: Add helpers xfs_attr_is_shortform and xfs_attr_set_shortform xfsprogs: Add helper function xfs_attr_leaf_mark_incomplete xfsprogs: Add remote block helper functions xfsprogs: Add helper function xfs_attr_node_removename_setup xfsprogs: Add helper function xfs_attr_node_removename_rmt xfsprogs: Simplify xfs_attr_leaf_addname xfsprogs: Simplify xfs_attr_node_addname xfsprogs: Lift -ENOSPC handler from xfs_attr_leaf_addname xfsprogs: Add delay ready attr remove routines xfsprogs: Add delay ready attr set routines xfsprogs: Rename __xfs_attr_rmtval_remove db/attrset.c | 61 +- include/libxfs.h | 1 + libxfs/libxfs_api_defs.h | 9 +- libxfs/xfs_attr.c | 1518 +++++++++++++++++++++++++++------------------- libxfs/xfs_attr.h | 313 +++++++--- libxfs/xfs_attr_leaf.c | 212 +++---- libxfs/xfs_attr_leaf.h | 4 +- libxfs/xfs_attr_remote.c | 261 +++++--- libxfs/xfs_attr_remote.h | 8 +- libxfs/xfs_da_btree.h | 9 +- libxfs/xfs_da_format.h | 12 - libxfs/xfs_fs.h | 32 +- 12 files changed, 1511 insertions(+), 929 deletions(-) -- 2.7.4