Hi all, Yikes. The userspace parent pointers support code dates from 2017 and is very very moldy. This patchset moves the xfs_io filtering stuff back to xfs_io. It also moves the parent pointer support code to libfrog because we don't want to expose things via libhandle until we're absolutely sure that we want to do that. (We probably want to do that some day.) Finally, adapt xfs_scrub to use parent pointer information whenever it has something to say about a file handle that it has open. If you're going to start using this mess, you probably ought to just pull from my git trees, which are linked below. This is an extraordinary way to destroy everything. Enjoy! Comments and questions are, as always, welcome. xfsprogs git tree: https://git.kernel.org/cgit/linux/kernel/git/djwong/xfsprogs-dev.git/log/?h=pptrs-use-getparents --- include/parent.h | 25 ------ io/parent.c | 122 ++++++++++++++++++----------- libfrog/Makefile | 2 libfrog/paths.c | 39 ++++++++- libfrog/paths.h | 8 +- libfrog/pptrs.c | 219 ++++++++++++++++++++++------------------------------ libfrog/pptrs.h | 25 ++++++ libhandle/Makefile | 2 scrub/common.c | 21 +++++ scrub/inodes.c | 26 ------ scrub/inodes.h | 2 11 files changed, 256 insertions(+), 235 deletions(-) rename libhandle/parent.c => libfrog/pptrs.c (50%) create mode 100644 libfrog/pptrs.h