[PATCH v3 00/30] xfsprogs: parent pointers v2

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is the 3rd revision of the parent pointer patch set for xfsprogs.  The
goal of the set is to enable use of the parent pointer feature on the kernel
side, and provide basic user space utilities.

The first 22 patches synchronize libxfs with changes seen the kernel space
patch. I will pick up the reviews from the kernel side series and mirror them
here.

Some points of interest since v2:
I've updated the series with feedback from the last revisions and also
synchronized the changes from v9 of the kernel side series.  Patches 25 and 
and 29 are new, so some attention there would be appreciated.  Patch 29 adds
flags to the parent command to filter the output based on a particular inode or
filename, which helped to reduce the run time of the xfstests set.

As always, comments and feedback are appreciated.  Thank you!

Allison

Allison Henderson (30):
  xfsprogs: Move xfs_attr.h to libxfs
  xfsprogs: Add helper function xfs_attr_try_sf_addname
  xfsprogs: Add attibute set and helper functions
  xfsprogs: Add attibute remove and helper functions
  xfsprogs: Add trans toggle to attr routines
  xfsprogs: Set up infastructure for deferred attribute operations
  xfsprogs: Add xfs_attr_set_deferred and xfs_attr_remove_deferred
  xfsprogs: Add xfs_has_attr and subroutines
  xfs: Add attr context to log item
  xfsprogs: Roll delayed attr operations by returning EAGAIN
  xfsprogs: Remove roll_trans boolean
  xfsprogs: Remove all strlen calls in all xfs_attr_* functions for attr
    names
  xfsprogs: get directory offset when adding directory name
  xfsprogs: get directory offset when removing directory name
  xfsprogs: get directory offset when replacing a directory name
  xfsprogs: add parent pointer support to attribute code
  xfsprogs: define parent pointer xattr format
  xfsprogs: extent transaction reservations for parent attributes
  xfsprogs: parent pointer attribute creation
  xfsprogs: Add the parent pointer support to the superblock version 5.
  xfsprogs: Add helper function xfs_attr_list_context_init
  xfsprogs: Add parent pointer ioctl
  xfsprogs: Add delayed attributes error tag
  xfsprogs: Add parent pointer flag to cmd
  xfsprogs: Add log item printing for ATTRI and ATTRD
  xfsprogs: Add xfs_verify_pptr
  xfsprogs: Add parent pointers to recreated inodes
  xfsprogs: Add parent pointers during protofile creation
  xfsprogs: implement the upper half of parent pointers
  xfsprogs: Add i, n and f flags to parent command

 include/handle.h         |   2 +
 include/parent.h         |  25 +++
 include/path.h           |  19 ++
 io/inject.c              |   1 +
 io/parent.c              | 506 +++++++++++++++--------------------------------
 libfrog/paths.c          | 136 +++++++++++++
 libhandle/Makefile       |   2 +-
 libhandle/handle.c       |   7 +-
 libhandle/parent.c       | 361 +++++++++++++++++++++++++++++++++
 libxfs/Makefile          |   3 +
 libxfs/libxfs_api_defs.h |   1 +
 libxfs/xfs_attr.c        | 495 +++++++++++++++++++++++++++++++---------------
 libxfs/xfs_attr.h        | 202 +++++++++++++++++++
 libxfs/xfs_attr_leaf.c   |  49 +++--
 libxfs/xfs_attr_leaf.h   |   3 +-
 libxfs/xfs_attr_remote.c |  20 --
 libxfs/xfs_bmap.c        |  49 +++--
 libxfs/xfs_bmap.h        |   1 +
 libxfs/xfs_da_btree.h    |   1 +
 libxfs/xfs_da_format.h   |  37 +++-
 libxfs/xfs_defer.h       |   1 +
 libxfs/xfs_dir2.c        |  21 +-
 libxfs/xfs_dir2.h        |   7 +-
 libxfs/xfs_dir2_block.c  |   9 +-
 libxfs/xfs_dir2_leaf.c   |   8 +-
 libxfs/xfs_dir2_node.c   |   8 +-
 libxfs/xfs_dir2_sf.c     |   6 +
 libxfs/xfs_errortag.h    |   4 +-
 libxfs/xfs_format.h      |  10 +-
 libxfs/xfs_fs.h          |  46 +++++
 libxfs/xfs_log_format.h  |  44 ++++-
 libxfs/xfs_parent.c      | 207 +++++++++++++++++++
 libxfs/xfs_parent.h      |  37 ++++
 libxfs/xfs_sb.c          |   2 +
 libxfs/xfs_trans_resv.c  | 111 ++++++++---
 libxfs/xfs_trans_resv.h  |   1 +
 libxfs/xfs_types.h       |   1 +
 logprint/log_misc.c      |  11 ++
 logprint/log_print_all.c |  12 ++
 logprint/log_redo.c      | 262 ++++++++++++++++++++++++
 logprint/logprint.h      |   6 +
 mkfs/proto.c             |  41 ++--
 mkfs/xfs_mkfs.c          |  23 ++-
 repair/attr_repair.c     |  21 +-
 repair/da_util.c         |  43 ++++
 repair/da_util.h         |  12 ++
 repair/phase6.c          |  52 +++--
 scrub/inodes.c           |  26 +++
 scrub/inodes.h           |   2 +
 scrub/phase5.c           |   9 +-
 50 files changed, 2298 insertions(+), 665 deletions(-)
 create mode 100644 libhandle/parent.c
 create mode 100644 libxfs/xfs_attr.h
 create mode 100644 libxfs/xfs_parent.c
 create mode 100644 libxfs/xfs_parent.h

-- 
2.7.4




[Index of Archives]     [XFS Filesystem Development (older mail)]     [Linux Filesystem Development]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux RAID]     [Linux SCSI]


  Powered by Linux