linux-xfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCHBOMB] xfsprogs: program changes (mostly xfs_scrub) for 6.10
@ 2024-07-02  0:43 Darrick J. Wong
  2024-07-02  0:49 ` [PATCHSET v30.7 01/16] xfsprogs: atomic file updates Darrick J. Wong
                   ` (15 more replies)
  0 siblings, 16 replies; 296+ messages in thread
From: Darrick J. Wong @ 2024-07-02  0:43 UTC (permalink / raw)
  To: Christoph Hellwig, Carlos Maiolino; +Cc: xfs

Hi everyone,

This is a partial patchbomb of all the changes I would like to merge for
xfsprogs 6.10.  The first patchset adds exchange-range support, and the
11th patchset adds parent pointers support.  Nearly everything else are
all the fixes needed in userspace (i.e. xfs_scrub) to complete online
repair.

Most of the new stuff for xfs_scrub are a lot of hardening of the
systemd system services; strengthening of the deceptive unicode checker
to report on the last few years' worth of unicode attacks; and better
responsiveness during the phase 8 FITRIM.

I've omitted everything that's already passed review, which cut down on
the patch count substantially.  Any patch with an 'R' column 1 has been
reviewed by someone; a patch with a '-' in column 1 has not been RVB'd.

[PATCHSET v30.7 01/16] xfsprogs: atomic file updates
- [PATCH 01/12] man: document the exchange-range ioctl
- [PATCH 02/12] man: document XFS_FSOP_GEOM_FLAGS_EXCHRANGE
- [PATCH 03/12] libhandle: add support for bulkstat v5
- [PATCH 04/12] libfrog: add support for exchange range ioctl family
- [PATCH 05/12] xfs_db: advertise exchange-range in the version command
- [PATCH 06/12] xfs_logprint: support dumping exchmaps log items
- [PATCH 07/12] xfs_fsr: convert to bulkstat v5 ioctls
- [PATCH 08/12] xfs_fsr: skip the xattr/forkoff levering with the newer
- [PATCH 09/12] xfs_io: create exchangerange command to test file range
- [PATCH 10/12] libfrog: advertise exchange-range support
- [PATCH 11/12] xfs_repair: add exchange-range to file systems
- [PATCH 12/12] mkfs: add a formatting option for exchange-range
[PATCHSET v30.7 02/16] xfsprogs: inode-related repair fixes
- [PATCH 1/3] xfs_{db,repair}: add an explicit owner field to
- [PATCH 2/3] libxfs: port the bumplink function from the kernel
- [PATCH 3/3] mkfs/repair: pin inodes that would otherwise overflow
[PATCHSET v30.7 03/16] xfs_scrub: detect deceptive filename
- [PATCH 01/13] xfs_scrub: use proper UChar string iterators
- [PATCH 02/13] xfs_scrub: hoist code that removes ignorable characters
- [PATCH 03/13] xfs_scrub: add a couple of omitted invisible code
- [PATCH 04/13] xfs_scrub: avoid potential UAF after freeing a
- [PATCH 05/13] xfs_scrub: guard against libicu returning negative
- [PATCH 06/13] xfs_scrub: hoist non-rendering character predicate
- [PATCH 07/13] xfs_scrub: store bad flags with the name entry
- [PATCH 08/13] xfs_scrub: rename UNICRASH_ZERO_WIDTH to
- [PATCH 09/13] xfs_scrub: type-coerce the UNICRASH_* flags
- [PATCH 10/13] xfs_scrub: reduce size of struct name_entry
- [PATCH 11/13] xfs_scrub: rename struct unicrash.normalizer
- [PATCH 12/13] xfs_scrub: report deceptive file extensions
- [PATCH 13/13] xfs_scrub: dump unicode points
[PATCHSET v30.7 04/16] xfs_scrub: move fstrim to a separate phase
- [PATCH 1/8] xfs_scrub: move FITRIM to phase 8
- [PATCH 2/8] xfs_scrub: ignore phase 8 if the user disabled fstrim
- [PATCH 3/8] xfs_scrub: collapse trim_filesystem
- [PATCH 4/8] xfs_scrub: fix the work estimation for phase 8
- [PATCH 5/8] xfs_scrub: report FITRIM errors properly
- [PATCH 6/8] xfs_scrub: don't call FITRIM after runtime errors
- [PATCH 7/8] xfs_scrub: don't trim the first agbno of each AG for
- [PATCH 8/8] xfs_scrub: improve progress meter for phase 8 fstrimming
[PATCHSET v30.7 05/16] xfs_scrub: use free space histograms to reduce
- [PATCH 1/7] libfrog: hoist free space histogram code
- [PATCH 2/7] libfrog: print wider columns for free space histogram
- [PATCH 3/7] libfrog: print cdf of free space buckets
- [PATCH 4/7] xfs_scrub: don't close stdout when closing the progress
- [PATCH 5/7] xfs_scrub: remove pointless spacemap.c arguments
- [PATCH 6/7] xfs_scrub: collect free space histograms during phase 7
- [PATCH 7/7] xfs_scrub: tune fstrim minlen parameter based on free
[PATCHSET v30.7 06/16] xfs_scrub: tighten security of systemd
- [PATCH 1/6] xfs_scrub: allow auxiliary pathnames for sandboxing
R [PATCH 2/6] xfs_scrub.service: reduce CPU usage to 60%% when possible
R [PATCH 3/6] xfs_scrub: use dynamic users when running as a systemd
R [PATCH 4/6] xfs_scrub: tighten up the security on the background
- [PATCH 5/6] xfs_scrub_fail: tighten up the security on the background
- [PATCH 6/6] xfs_scrub_all: tighten up the security on the background
[PATCHSET v30.7 07/16] xfs_scrub_all: automatic media scan service
- [PATCH 1/6] xfs_scrub_all: only use the xfs_scrub@ systemd services
- [PATCH 2/6] xfs_scrub_all: remove journalctl background process
- [PATCH 3/6] xfs_scrub_all: support metadata+media scans of all
- [PATCH 4/6] xfs_scrub_all: enable periodic file data scrubs
- [PATCH 5/6] xfs_scrub_all: trigger automatic media scans once per
- [PATCH 6/6] xfs_scrub_all: failure reporting for the xfs_scrub_all
[PATCHSET v30.7 08/16] xfs_scrub_all: improve systemd handling
- [PATCH 1/5] xfs_scrub_all: encapsulate all the subprocess code in an
- [PATCH 2/5] xfs_scrub_all: encapsulate all the systemctl code in an
- [PATCH 3/5] xfs_scrub_all: add CLI option for easier debugging
- [PATCH 4/5] xfs_scrub_all: convert systemctl calls to dbus
- [PATCH 5/5] xfs_scrub_all: implement retry and backoff for dbus calls
[PATCHSET v30.7 09/16] xfs_scrub: automatic optimization by default
- [PATCH 1/3] xfs_scrub: automatic downgrades to dry-run mode in
- [PATCH 2/3] xfs_scrub: add an optimization-only mode
- [PATCH 3/3] debian: enable xfs_scrub_all systemd timer services by
[PATCHSET v13.7 10/16] xfsprogs: improve extended attribute
- [PATCH 1/3] xfs_repair: check free space requirements before allowing
- [PATCH 2/3] xfs_repair: enforce one namespace bit per extended
- [PATCH 3/3] xfs_repair: check for unknown flags in attr entries
[PATCHSET v13.7 11/16] xfsprogs: Parent Pointers
- [PATCH 01/24] libxfs: create attr log item opcodes and formats for
- [PATCH 02/24] xfs_{db,repair}: implement new attr hash value function
- [PATCH 03/24] xfs_logprint: dump new attr log item fields
- [PATCH 04/24] man: document the XFS_IOC_GETPARENTS ioctl
- [PATCH 05/24] libfrog: report parent pointers to userspace
- [PATCH 06/24] libfrog: add parent pointer support code
R [PATCH 07/24] xfs_io: adapt parent command to new parent pointer
R [PATCH 08/24] xfs_io: Add i, n and f flags to parent command
R [PATCH 09/24] xfs_logprint: decode parent pointers in ATTRI items
- [PATCH 10/24] xfs_spaceman: report file paths
- [PATCH 11/24] xfs_scrub: use parent pointers when possible to report
- [PATCH 12/24] xfs_scrub: use parent pointers to report lost file data
- [PATCH 13/24] xfs_db: report parent pointers in version command
R [PATCH 14/24] xfs_db: report parent bit on xattrs
- [PATCH 15/24] xfs_db: report parent pointers embedded in xattrs
- [PATCH 16/24] xfs_db: obfuscate dirent and parent pointer names
- [PATCH 17/24] libxfs: export attr3_leaf_hdr_from_disk via
- [PATCH 18/24] xfs_db: add a parents command to list the parents of a
- [PATCH 19/24] xfs_db: make attr_set and attr_remove handle parent
- [PATCH 20/24] xfs_db: add link and unlink expert commands
- [PATCH 21/24] xfs_db: compute hashes of parent pointers
- [PATCH 22/24] libxfs: create new files with attr forks if necessary
R [PATCH 23/24] mkfs: Add parent pointers during protofile creation
R [PATCH 24/24] mkfs: enable formatting with parent pointers
[PATCHSET v13.7 12/16] xfsprogs: scrubbing for parent pointers
- [PATCH 1/2] xfs: create a blob array data structure
- [PATCH 2/2] man2: update ioctl_xfs_scrub_metadata.2 for parent
[PATCHSET v13.7 13/16] xfsprogs: offline repair for parent pointers
- [PATCH 01/12] xfs_db: remove some boilerplate from xfs_attr_set
- [PATCH 02/12] xfs_db: actually report errors from libxfs_attr_set
- [PATCH 03/12] xfs_repair: junk parent pointer attributes when
- [PATCH 04/12] xfs_repair: add parent pointers when messing with
- [PATCH 05/12] xfs_repair: junk duplicate hashtab entries when
- [PATCH 06/12] xfs_repair: build a parent pointer index
- [PATCH 07/12] xfs_repair: move the global dirent name store to a
- [PATCH 08/12] xfs_repair: deduplicate strings stored in string blob
- [PATCH 09/12] xfs_repair: check parent pointers
- [PATCH 10/12] xfs_repair: dump garbage parent pointer attributes
- [PATCH 11/12] xfs_repair: update ondisk parent pointer records
- [PATCH 12/12] xfs_repair: wipe ondisk parent pointers when there are
[PATCHSET v13.7 14/16] xfsprogs: detect and correct directory tree
- [PATCH 1/5] libfrog: add directory tree structure scrubber to scrub
- [PATCH 2/5] xfs_spaceman: report directory tree corruption in the
- [PATCH 3/5] xfs_scrub: fix erroring out of check_inode_names
- [PATCH 4/5] xfs_scrub: detect and repair directory tree corruptions
- [PATCH 5/5] xfs_scrub: defer phase5 file scans if dirloop fails
[PATCHSET v30.7 15/16] xfs_scrub: vectorize kernel calls
- [PATCH 01/10] man: document vectored scrub mode
- [PATCH 02/10] libfrog: support vectored scrub
- [PATCH 03/10] xfs_io: support vectored scrub
- [PATCH 04/10] xfs_scrub: split the scrub epilogue code into a
- [PATCH 05/10] xfs_scrub: split the repair epilogue code into a
- [PATCH 06/10] xfs_scrub: convert scrub and repair epilogues to use
- [PATCH 07/10] xfs_scrub: vectorize scrub calls
- [PATCH 08/10] xfs_scrub: vectorize repair calls
- [PATCH 09/10] xfs_scrub: use scrub barriers to reduce kernel calls
- [PATCH 10/10] xfs_scrub: try spot repairs of metadata items to make
[PATCHSET v30.7 16/16] xfs_repair: small remote symlinks are ok
- [PATCH 1/1] xfs_repair: allow symlinks with short remote targets

--D

^ permalink raw reply	[flat|nested] 296+ messages in thread
* [PATCHSET v13.8 18/23] xfsprogs: Parent Pointers
@ 2024-07-30  0:21 Darrick J. Wong
  2024-07-30  1:22 ` [PATCH 15/24] xfs_db: report parent pointers embedded in xattrs Darrick J. Wong
  0 siblings, 1 reply; 296+ messages in thread
From: Darrick J. Wong @ 2024-07-30  0:21 UTC (permalink / raw)
  To: djwong, cem
  Cc: Christoph Hellwig, Allison Henderson, linux-xfs, catherine.hoang,
	allison.henderson

Hi all,

This is the latest parent pointer attributes for xfs.  The goal of this
patch set is to add a parent pointer attribute to each inode.  The
attribute name containing the parent inode, generation, and directory
offset, while the  attribute value contains the file name.  This feature
will enable future optimizations for online scrub, shrink, nfs handles,
verity, or any other feature that could make use of quickly deriving an
inodes path from the mount point.

Directory parent pointers are stored as namespaced extended attributes
of a file.  Because parent pointers are an indivisible tuple of
(dirent_name, parent_ino, parent_gen) we cannot use the usual attr name
lookup functions to find a parent pointer.  This is solvable by
introducing a new lookup mode that checks both the name and the value of
the xattr.

Therefore, introduce this new name-value lookup mode that's gated on the
XFS_ATTR_PARENT namespace.  This requires the introduction of new
opcodes for the extended attribute update log intent items, which
actually means that parent pointers (itself an INCOMPAT feature) does
not depend on the LOGGED_XATTRS log incompat feature bit.

To reduce collisions on the dirent names of parent pointers, introduce a
new attr hash mode that is the dir2 namehash of the dirent name xor'd
with the parent inode number.

At this point, Allison has moved on to other things, so I've merged her
patchset into djwong-dev for merging.

Updates since v12 [djwong]:

Rebase on 6.9-rc and update the online fsck design document.
Redesign the ondisk format to use the name-value lookups to get us back
to the point where the attr is (dirent_name -> parent_ino/gen).

Updates since v11 [djwong]:

Rebase on 6.4-rc and make some tweaks and bugfixes to enable the repair
prototypes.  Merge with djwong-dev and make online repair actually work.

Updates since v10 [djwong]:

Merge in the ondisk format changes to get rid of the diroffset conflicts
with the parent pointer repair code, rebase the entire series with the
attr vlookup changes first, and merge all the other random fixes.

Updates since v9:

Reordered patches 2 and 3 to be 6 and 7

xfs: Add xfs_verify_pptr
   moved parent pointer validators to xfs_parent

xfs: Add parent pointer ioctl
   Extra validation checks for fs id
   added missing release for the inode
   use GFP_KERNEL flags for malloc/realloc
   reworked ioctl to use pptr listenty and flex array

NEW
   xfs: don't remove the attr fork when parent pointers are enabled

NEW
   directory lookups should return diroffsets too

NEW
   xfs: move/add parent pointer validators to xfs_parent

Updates since v8:

xfs: parent pointer attribute creation
   Fix xfs_parent_init to release log assist on alloc fail
   Add slab cache for xfs_parent_defer
   Fix xfs_create to release after unlock
   Add xfs_parent_start and xfs_parent_finish wrappers
   removed unused xfs_parent_name_irec and xfs_init_parent_name_irec

xfs: add parent attributes to link
   Start/finish wrapper updates
   Fix xfs_link to disallow reservationless quotas

xfs: add parent attributes to symlink
   Fix xfs_symlink to release after unlock
   Start/finish wrapper updates

xfs: remove parent pointers in unlink
   Start/finish wrapper updates
   Add missing parent free

xfs: Add parent pointers to rename
   Start/finish wrapper updates
   Fix rename to only grab logged xattr once
   Fix xfs_rename to disallow reservationless quotas
   Fix double unlock on dqattach fail
   Move parent frees to out_release_wip

xfs: Add parent pointers to xfs_cross_rename
   Hoist parent pointers into rename

Questions comments and feedback appreciated!

Thanks all!
Allison

If you're going to start using this code, I strongly recommend pulling
from my git trees, which are linked below.

This has been running on the djcloud for months with no problems.  Enjoy!
Comments and questions are, as always, welcome.

kernel git tree:
https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-linux.git/log/?h=pptrs-6.10

xfsprogs git tree:
https://git.kernel.org/cgit/linux/kernel/git/djwong/xfsprogs-dev.git/log/?h=pptrs-6.10
---
Commits in this patchset:
 * libxfs: create attr log item opcodes and formats for parent pointers
 * xfs_{db,repair}: implement new attr hash value function
 * xfs_logprint: dump new attr log item fields
 * man: document the XFS_IOC_GETPARENTS ioctl
 * libfrog: report parent pointers to userspace
 * libfrog: add parent pointer support code
 * xfs_io: adapt parent command to new parent pointer ioctls
 * xfs_io: Add i, n and f flags to parent command
 * xfs_logprint: decode parent pointers in ATTRI items fully
 * xfs_spaceman: report file paths
 * xfs_scrub: use parent pointers when possible to report file operations
 * xfs_scrub: use parent pointers to report lost file data
 * xfs_db: report parent pointers in version command
 * xfs_db: report parent bit on xattrs
 * xfs_db: report parent pointers embedded in xattrs
 * xfs_db: obfuscate dirent and parent pointer names consistently
 * libxfs: export attr3_leaf_hdr_from_disk via libxfs_api_defs.h
 * xfs_db: add a parents command to list the parents of a file
 * xfs_db: make attr_set and attr_remove handle parent pointers
 * xfs_db: add link and unlink expert commands
 * xfs_db: compute hashes of parent pointers
 * libxfs: create new files with attr forks if necessary
 * mkfs: Add parent pointers during protofile creation
 * mkfs: enable formatting with parent pointers
---
 db/attr.c                       |   33 ++
 db/attrset.c                    |  202 +++++++++--
 db/attrshort.c                  |   27 ++
 db/field.c                      |   10 +
 db/field.h                      |    3 
 db/hash.c                       |   44 ++
 db/metadump.c                   |  322 +++++++++++++++++-
 db/namei.c                      |  701 +++++++++++++++++++++++++++++++++++++++
 db/sb.c                         |    2 
 include/handle.h                |    1 
 include/xfs_inode.h             |    4 
 io/parent.c                     |  541 +++++++++++-------------------
 libfrog/Makefile                |    2 
 libfrog/fsgeom.c                |    6 
 libfrog/getparents.c            |  355 ++++++++++++++++++++
 libfrog/getparents.h            |   42 ++
 libfrog/paths.c                 |  168 +++++++++
 libfrog/paths.h                 |   25 +
 libhandle/handle.c              |    7 
 libxfs/defer_item.c             |   52 +++
 libxfs/init.c                   |    4 
 libxfs/libxfs_api_defs.h        |   19 +
 libxfs/util.c                   |   19 +
 logprint/log_redo.c             |  217 +++++++++++-
 logprint/logprint.h             |    5 
 man/man2/ioctl_xfs_getparents.2 |  212 ++++++++++++
 man/man8/xfs_db.8               |   59 +++
 man/man8/xfs_io.8               |   32 +-
 man/man8/xfs_spaceman.8         |    7 
 mkfs/lts_4.19.conf              |    3 
 mkfs/lts_5.10.conf              |    3 
 mkfs/lts_5.15.conf              |    3 
 mkfs/lts_5.4.conf               |    3 
 mkfs/lts_6.1.conf               |    3 
 mkfs/lts_6.6.conf               |    3 
 mkfs/proto.c                    |   62 +++
 mkfs/xfs_mkfs.c                 |   45 ++-
 repair/attr_repair.c            |   24 +
 scrub/common.c                  |   41 ++
 scrub/phase6.c                  |   75 ++++
 spaceman/Makefile               |   16 +
 spaceman/file.c                 |    7 
 spaceman/health.c               |   53 ++-
 spaceman/space.h                |    3 
 44 files changed, 2941 insertions(+), 524 deletions(-)
 create mode 100644 libfrog/getparents.c
 create mode 100644 libfrog/getparents.h
 create mode 100644 man/man2/ioctl_xfs_getparents.2


^ permalink raw reply	[flat|nested] 296+ messages in thread

end of thread, other threads:[~2024-07-30  1:22 UTC | newest]

Thread overview: 296+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-02  0:43 [PATCHBOMB] xfsprogs: program changes (mostly xfs_scrub) for 6.10 Darrick J. Wong
2024-07-02  0:49 ` [PATCHSET v30.7 01/16] xfsprogs: atomic file updates Darrick J. Wong
2024-07-02  0:53   ` [PATCH 01/12] man: document the exchange-range ioctl Darrick J. Wong
2024-07-02  5:08     ` Christoph Hellwig
2024-07-02  0:54   ` [PATCH 02/12] man: document XFS_FSOP_GEOM_FLAGS_EXCHRANGE Darrick J. Wong
2024-07-02  5:08     ` Christoph Hellwig
2024-07-02  0:54   ` [PATCH 03/12] libhandle: add support for bulkstat v5 Darrick J. Wong
2024-07-02  5:09     ` Christoph Hellwig
2024-07-02 19:48       ` Darrick J. Wong
2024-07-02  0:54   ` [PATCH 04/12] libfrog: add support for exchange range ioctl family Darrick J. Wong
2024-07-02  5:09     ` Christoph Hellwig
2024-07-02  0:54   ` [PATCH 05/12] xfs_db: advertise exchange-range in the version command Darrick J. Wong
2024-07-02  5:10     ` Christoph Hellwig
2024-07-02  0:55   ` [PATCH 06/12] xfs_logprint: support dumping exchmaps log items Darrick J. Wong
2024-07-02  5:11     ` Christoph Hellwig
2024-07-02 19:49       ` Darrick J. Wong
2024-07-02  0:55   ` [PATCH 07/12] xfs_fsr: convert to bulkstat v5 ioctls Darrick J. Wong
2024-07-02  5:13     ` Christoph Hellwig
2024-07-02 19:51       ` Darrick J. Wong
2024-07-02  0:55   ` [PATCH 08/12] xfs_fsr: skip the xattr/forkoff levering with the newer swapext implementations Darrick J. Wong
2024-07-02  5:14     ` Christoph Hellwig
2024-07-02  0:55   ` [PATCH 09/12] xfs_io: create exchangerange command to test file range exchange ioctl Darrick J. Wong
2024-07-02  5:15     ` Christoph Hellwig
2024-07-02 19:53       ` Darrick J. Wong
2024-07-02  0:56   ` [PATCH 10/12] libfrog: advertise exchange-range support Darrick J. Wong
2024-07-02  5:15     ` Christoph Hellwig
2024-07-02  0:56   ` [PATCH 11/12] xfs_repair: add exchange-range to file systems Darrick J. Wong
2024-07-02  5:15     ` Christoph Hellwig
2024-07-02  0:56   ` [PATCH 12/12] mkfs: add a formatting option for exchange-range Darrick J. Wong
2024-07-02  5:16     ` Christoph Hellwig
2024-07-02  0:49 ` [PATCHSET v30.7 02/16] xfsprogs: inode-related repair fixes Darrick J. Wong
2024-07-02  0:56   ` [PATCH 1/3] xfs_{db,repair}: add an explicit owner field to xfs_da_args Darrick J. Wong
2024-07-02  5:16     ` Christoph Hellwig
2024-07-02  0:57   ` [PATCH 2/3] libxfs: port the bumplink function from the kernel Darrick J. Wong
2024-07-02  5:16     ` Christoph Hellwig
2024-07-02  0:57   ` [PATCH 3/3] mkfs/repair: pin inodes that would otherwise overflow link count Darrick J. Wong
2024-07-02  5:17     ` Christoph Hellwig
2024-07-02  0:50 ` [PATCHSET v30.7 03/16] xfs_scrub: detect deceptive filename extensions Darrick J. Wong
2024-07-02  0:57   ` [PATCH 01/13] xfs_scrub: use proper UChar string iterators Darrick J. Wong
2024-07-02  5:18     ` Christoph Hellwig
2024-07-02  0:57   ` [PATCH 02/13] xfs_scrub: hoist code that removes ignorable characters Darrick J. Wong
2024-07-02  5:21     ` Christoph Hellwig
2024-07-02  0:58   ` [PATCH 03/13] xfs_scrub: add a couple of omitted invisible code points Darrick J. Wong
2024-07-02  5:22     ` Christoph Hellwig
2024-07-03  1:59       ` Darrick J. Wong
2024-07-03  4:27         ` Christoph Hellwig
2024-07-03  5:02           ` Darrick J. Wong
2024-07-03 18:35             ` Darrick J. Wong
2024-07-04  7:22               ` Christoph Hellwig
2024-07-02  0:58   ` [PATCH 04/13] xfs_scrub: avoid potential UAF after freeing a duplicate name entry Darrick J. Wong
2024-07-02  5:22     ` Christoph Hellwig
2024-07-02  0:58   ` [PATCH 05/13] xfs_scrub: guard against libicu returning negative buffer lengths Darrick J. Wong
2024-07-02  5:22     ` Christoph Hellwig
2024-07-02  0:58   ` [PATCH 06/13] xfs_scrub: hoist non-rendering character predicate Darrick J. Wong
2024-07-02  5:23     ` Christoph Hellwig
2024-07-02  0:59   ` [PATCH 07/13] xfs_scrub: store bad flags with the name entry Darrick J. Wong
2024-07-02  5:23     ` Christoph Hellwig
2024-07-02  0:59   ` [PATCH 08/13] xfs_scrub: rename UNICRASH_ZERO_WIDTH to UNICRASH_INVISIBLE Darrick J. Wong
2024-07-02  5:23     ` Christoph Hellwig
2024-07-02  0:59   ` [PATCH 09/13] xfs_scrub: type-coerce the UNICRASH_* flags Darrick J. Wong
2024-07-02  5:24     ` Christoph Hellwig
2024-07-02  0:59   ` [PATCH 10/13] xfs_scrub: reduce size of struct name_entry Darrick J. Wong
2024-07-02  5:24     ` Christoph Hellwig
2024-07-02  1:00   ` [PATCH 11/13] xfs_scrub: rename struct unicrash.normalizer Darrick J. Wong
2024-07-02  5:24     ` Christoph Hellwig
2024-07-02  1:00   ` [PATCH 12/13] xfs_scrub: report deceptive file extensions Darrick J. Wong
2024-07-02  5:25     ` Christoph Hellwig
2024-07-02  1:00   ` [PATCH 13/13] xfs_scrub: dump unicode points Darrick J. Wong
2024-07-02  5:25     ` Christoph Hellwig
2024-07-02  0:50 ` [PATCHSET v30.7 04/16] xfs_scrub: move fstrim to a separate phase Darrick J. Wong
2024-07-02  1:01   ` [PATCH 1/8] xfs_scrub: move FITRIM to phase 8 Darrick J. Wong
2024-07-02  5:27     ` Christoph Hellwig
2024-07-02  1:01   ` [PATCH 2/8] xfs_scrub: ignore phase 8 if the user disabled fstrim Darrick J. Wong
2024-07-02  5:27     ` Christoph Hellwig
2024-07-02  1:01   ` [PATCH 3/8] xfs_scrub: collapse trim_filesystem Darrick J. Wong
2024-07-02  5:27     ` Christoph Hellwig
2024-07-02  1:01   ` [PATCH 4/8] xfs_scrub: fix the work estimation for phase 8 Darrick J. Wong
2024-07-02  5:27     ` Christoph Hellwig
2024-07-02  1:02   ` [PATCH 5/8] xfs_scrub: report FITRIM errors properly Darrick J. Wong
2024-07-02  5:28     ` Christoph Hellwig
2024-07-02  1:02   ` [PATCH 6/8] xfs_scrub: don't call FITRIM after runtime errors Darrick J. Wong
2024-07-02  5:28     ` Christoph Hellwig
2024-07-02  1:02   ` [PATCH 7/8] xfs_scrub: don't trim the first agbno of each AG for better performance Darrick J. Wong
2024-07-02  5:30     ` Christoph Hellwig
2024-07-03  3:45       ` Darrick J. Wong
2024-07-03  3:52     ` [PATCH v30.7.1 7/8] xfs_scrub: improve responsiveness while trimming the filesystem Darrick J. Wong
2024-07-03  4:33       ` Christoph Hellwig
2024-07-03  4:50         ` Darrick J. Wong
2024-07-02  1:02   ` [PATCH 8/8] xfs_scrub: improve progress meter for phase 8 fstrimming Darrick J. Wong
2024-07-02  0:50 ` [PATCHSET v30.7 05/16] xfs_scrub: use free space histograms to reduce fstrim runtime Darrick J. Wong
2024-07-02  1:03   ` [PATCH 1/7] libfrog: hoist free space histogram code Darrick J. Wong
2024-07-02  5:32     ` Christoph Hellwig
2024-07-03  2:47       ` Darrick J. Wong
2024-07-03  4:30         ` Christoph Hellwig
2024-07-03  4:55           ` Darrick J. Wong
2024-07-02  1:03   ` [PATCH 2/7] libfrog: print wider columns for free space histogram Darrick J. Wong
2024-07-02  5:33     ` Christoph Hellwig
2024-07-02  1:03   ` [PATCH 3/7] libfrog: print cdf of free space buckets Darrick J. Wong
2024-07-02  5:33     ` Christoph Hellwig
2024-07-02  1:03   ` [PATCH 4/7] xfs_scrub: don't close stdout when closing the progress bar Darrick J. Wong
2024-07-02  5:33     ` Christoph Hellwig
2024-07-02  1:04   ` [PATCH 5/7] xfs_scrub: remove pointless spacemap.c arguments Darrick J. Wong
2024-07-02  5:33     ` Christoph Hellwig
2024-07-02  1:04   ` [PATCH 6/7] xfs_scrub: collect free space histograms during phase 7 Darrick J. Wong
2024-07-02  5:34     ` Christoph Hellwig
2024-07-02  1:04   ` [PATCH 7/7] xfs_scrub: tune fstrim minlen parameter based on free space histograms Darrick J. Wong
2024-07-02  5:36     ` Christoph Hellwig
2024-07-03  2:29       ` Darrick J. Wong
2024-07-03  4:29         ` Christoph Hellwig
2024-07-03  4:55           ` Darrick J. Wong
2024-07-03  4:58             ` Christoph Hellwig
2024-07-03  5:04               ` Darrick J. Wong
2024-07-03  5:11                 ` Christoph Hellwig
2024-07-03  5:17                   ` Darrick J. Wong
2024-07-02  0:50 ` [PATCHSET v30.7 06/16] xfs_scrub: tighten security of systemd services Darrick J. Wong
2024-07-02  1:04   ` [PATCH 1/6] xfs_scrub: allow auxiliary pathnames for sandboxing Darrick J. Wong
2024-07-02  5:37     ` Christoph Hellwig
2024-07-02  1:05   ` [PATCH 2/6] xfs_scrub.service: reduce background CPU usage to less than one core if possible Darrick J. Wong
2024-07-02  1:05   ` [PATCH 3/6] xfs_scrub: use dynamic users when running as a systemd service Darrick J. Wong
2024-07-02  1:05   ` [PATCH 4/6] xfs_scrub: tighten up the security on the background " Darrick J. Wong
2024-07-02  1:06   ` [PATCH 5/6] xfs_scrub_fail: " Darrick J. Wong
2024-07-02  5:37     ` Christoph Hellwig
2024-07-02  1:06   ` [PATCH 6/6] xfs_scrub_all: " Darrick J. Wong
2024-07-02  5:37     ` Christoph Hellwig
2024-07-02  0:51 ` [PATCHSET v30.7 07/16] xfs_scrub_all: automatic media scan service Darrick J. Wong
2024-07-02  1:06   ` [PATCH 1/6] xfs_scrub_all: only use the xfs_scrub@ systemd services in service mode Darrick J. Wong
2024-07-02  5:38     ` Christoph Hellwig
2024-07-02  1:06   ` [PATCH 2/6] xfs_scrub_all: remove journalctl background process Darrick J. Wong
2024-07-02  5:38     ` Christoph Hellwig
2024-07-02  1:07   ` [PATCH 3/6] xfs_scrub_all: support metadata+media scans of all filesystems Darrick J. Wong
2024-07-02  5:39     ` Christoph Hellwig
2024-07-02  1:07   ` [PATCH 4/6] xfs_scrub_all: enable periodic file data scrubs automatically Darrick J. Wong
2024-07-02  5:39     ` Christoph Hellwig
2024-07-02  1:07   ` [PATCH 5/6] xfs_scrub_all: trigger automatic media scans once per month Darrick J. Wong
2024-07-02  5:39     ` Christoph Hellwig
2024-07-02  1:07   ` [PATCH 6/6] xfs_scrub_all: failure reporting for the xfs_scrub_all job Darrick J. Wong
2024-07-02  5:39     ` Christoph Hellwig
2024-07-02  0:51 ` [PATCHSET v30.7 08/16] xfs_scrub_all: improve systemd handling Darrick J. Wong
2024-07-02  1:08   ` [PATCH 1/5] xfs_scrub_all: encapsulate all the subprocess code in an object Darrick J. Wong
2024-07-02  5:40     ` Christoph Hellwig
2024-07-02  1:08   ` [PATCH 2/5] xfs_scrub_all: encapsulate all the systemctl " Darrick J. Wong
2024-07-02  5:41     ` Christoph Hellwig
2024-07-02  1:08   ` [PATCH 3/5] xfs_scrub_all: add CLI option for easier debugging Darrick J. Wong
2024-07-02  5:42     ` Christoph Hellwig
2024-07-02  1:08   ` [PATCH 4/5] xfs_scrub_all: convert systemctl calls to dbus Darrick J. Wong
2024-07-02  5:42     ` Christoph Hellwig
2024-07-02  1:09   ` [PATCH 5/5] xfs_scrub_all: implement retry and backoff for dbus calls Darrick J. Wong
2024-07-02  5:42     ` Christoph Hellwig
2024-07-02  0:51 ` [PATCHSET v30.7 09/16] xfs_scrub: automatic optimization by default Darrick J. Wong
2024-07-02  1:09   ` [PATCH 1/3] xfs_scrub: automatic downgrades to dry-run mode in service mode Darrick J. Wong
2024-07-02  5:43     ` Christoph Hellwig
2024-07-02  1:09   ` [PATCH 2/3] xfs_scrub: add an optimization-only mode Darrick J. Wong
2024-07-02  5:43     ` Christoph Hellwig
2024-07-02  1:09   ` [PATCH 3/3] debian: enable xfs_scrub_all systemd timer services by default Darrick J. Wong
2024-07-02  5:44     ` Christoph Hellwig
2024-07-03  2:59       ` Darrick J. Wong
2024-07-03  4:31         ` Christoph Hellwig
2024-07-03  5:01           ` Darrick J. Wong
2024-07-09 22:53             ` Darrick J. Wong
2024-07-10  6:18               ` Christoph Hellwig
2024-07-16 16:46                 ` Darrick J. Wong
2024-07-17  4:59                   ` Christoph Hellwig
2024-07-17 16:15                     ` Darrick J. Wong
2024-07-17 16:45                       ` Christoph Hellwig
2024-07-22  4:12                         ` Darrick J. Wong
2024-07-22 12:34                           ` Christoph Hellwig
2024-07-23 23:29                             ` Darrick J. Wong
2024-07-24 13:18                               ` Christoph Hellwig
2024-07-16 16:47                 ` [RFC PATCH 1/2] misc: shift install targets Darrick J. Wong
2024-07-16 16:49                   ` [RFC PATCH 2/2] debian: create a new package for automatic self-healing Darrick J. Wong
2024-07-17  5:00                   ` [RFC PATCH 1/2] misc: shift install targets Christoph Hellwig
2024-07-17 16:19                     ` Darrick J. Wong
2024-07-17 16:43                       ` Christoph Hellwig
2024-07-02  0:51 ` [PATCHSET v13.7 10/16] xfsprogs: improve extended attribute validation Darrick J. Wong
2024-07-02  1:10   ` [PATCH 1/3] xfs_repair: check free space requirements before allowing upgrades Darrick J. Wong
2024-07-02  5:44     ` Christoph Hellwig
2024-07-02  1:10   ` [PATCH 2/3] xfs_repair: enforce one namespace bit per extended attribute Darrick J. Wong
2024-07-02  5:44     ` Christoph Hellwig
2024-07-02  1:10   ` [PATCH 3/3] xfs_repair: check for unknown flags in attr entries Darrick J. Wong
2024-07-02  5:45     ` Christoph Hellwig
2024-07-02  0:52 ` [PATCHSET v13.7 11/16] xfsprogs: Parent Pointers Darrick J. Wong
2024-07-02  1:10   ` [PATCH 01/24] libxfs: create attr log item opcodes and formats for parent pointers Darrick J. Wong
2024-07-02  6:24     ` Christoph Hellwig
2024-07-02  1:11   ` [PATCH 02/24] xfs_{db,repair}: implement new attr hash value function Darrick J. Wong
2024-07-02  6:24     ` Christoph Hellwig
2024-07-02  1:11   ` [PATCH 03/24] xfs_logprint: dump new attr log item fields Darrick J. Wong
2024-07-02  6:25     ` Christoph Hellwig
2024-07-02 20:02       ` Darrick J. Wong
2024-07-02  1:11   ` [PATCH 04/24] man: document the XFS_IOC_GETPARENTS ioctl Darrick J. Wong
2024-07-02  6:25     ` Christoph Hellwig
2024-07-02  1:11   ` [PATCH 05/24] libfrog: report parent pointers to userspace Darrick J. Wong
2024-07-02  6:25     ` Christoph Hellwig
2024-07-02  1:12   ` [PATCH 06/24] libfrog: add parent pointer support code Darrick J. Wong
2024-07-02  6:26     ` Christoph Hellwig
2024-07-02  1:12   ` [PATCH 07/24] xfs_io: adapt parent command to new parent pointer ioctls Darrick J. Wong
2024-07-02  6:26     ` Christoph Hellwig
2024-07-02  1:12   ` [PATCH 08/24] xfs_io: Add i, n and f flags to parent command Darrick J. Wong
2024-07-02  6:26     ` Christoph Hellwig
2024-07-02  1:13   ` [PATCH 09/24] xfs_logprint: decode parent pointers in ATTRI items fully Darrick J. Wong
2024-07-02  6:27     ` Christoph Hellwig
2024-07-02  1:13   ` [PATCH 10/24] xfs_spaceman: report file paths Darrick J. Wong
2024-07-02  6:27     ` Christoph Hellwig
2024-07-02  1:13   ` [PATCH 11/24] xfs_scrub: use parent pointers when possible to report file operations Darrick J. Wong
2024-07-02  6:27     ` Christoph Hellwig
2024-07-02  1:13   ` [PATCH 12/24] xfs_scrub: use parent pointers to report lost file data Darrick J. Wong
2024-07-02  6:28     ` Christoph Hellwig
2024-07-02  1:14   ` [PATCH 13/24] xfs_db: report parent pointers in version command Darrick J. Wong
2024-07-02  6:28     ` Christoph Hellwig
2024-07-02  1:14   ` [PATCH 14/24] xfs_db: report parent bit on xattrs Darrick J. Wong
2024-07-02  6:28     ` Christoph Hellwig
2024-07-02  1:14   ` [PATCH 15/24] xfs_db: report parent pointers embedded in xattrs Darrick J. Wong
2024-07-02  6:28     ` Christoph Hellwig
2024-07-02  1:14   ` [PATCH 16/24] xfs_db: obfuscate dirent and parent pointer names consistently Darrick J. Wong
2024-07-02  6:33     ` Christoph Hellwig
2024-07-02  1:15   ` [PATCH 17/24] libxfs: export attr3_leaf_hdr_from_disk via libxfs_api_defs.h Darrick J. Wong
2024-07-02  6:35     ` Christoph Hellwig
2024-07-02  1:15   ` [PATCH 18/24] xfs_db: add a parents command to list the parents of a file Darrick J. Wong
2024-07-02  6:35     ` Christoph Hellwig
2024-07-02  1:15   ` [PATCH 19/24] xfs_db: make attr_set and attr_remove handle parent pointers Darrick J. Wong
2024-07-02  6:36     ` Christoph Hellwig
2024-07-02  1:15   ` [PATCH 20/24] xfs_db: add link and unlink expert commands Darrick J. Wong
2024-07-02  6:36     ` Christoph Hellwig
2024-07-02  1:16   ` [PATCH 21/24] xfs_db: compute hashes of parent pointers Darrick J. Wong
2024-07-02  6:37     ` Christoph Hellwig
2024-07-02  1:16   ` [PATCH 22/24] libxfs: create new files with attr forks if necessary Darrick J. Wong
2024-07-02  6:37     ` Christoph Hellwig
2024-07-02  1:16   ` [PATCH 23/24] mkfs: Add parent pointers during protofile creation Darrick J. Wong
2024-07-02  6:37     ` Christoph Hellwig
2024-07-02  1:16   ` [PATCH 24/24] mkfs: enable formatting with parent pointers Darrick J. Wong
2024-07-02  6:38     ` Christoph Hellwig
2024-07-02  0:52 ` [PATCHSET v13.7 12/16] xfsprogs: scrubbing for " Darrick J. Wong
2024-07-02  1:17   ` [PATCH 1/2] xfs: create a blob array data structure Darrick J. Wong
2024-07-02  6:41     ` Christoph Hellwig
2024-07-02  1:17   ` [PATCH 2/2] man2: update ioctl_xfs_scrub_metadata.2 for parent pointers Darrick J. Wong
2024-07-02  6:41     ` Christoph Hellwig
2024-07-02  0:52 ` [PATCHSET v13.7 13/16] xfsprogs: offline repair " Darrick J. Wong
2024-07-02  1:17   ` [PATCH 01/12] xfs_db: remove some boilerplate from xfs_attr_set Darrick J. Wong
2024-07-02  6:41     ` Christoph Hellwig
2024-07-02  1:17   ` [PATCH 02/12] xfs_db: actually report errors from libxfs_attr_set Darrick J. Wong
2024-07-02  6:41     ` Christoph Hellwig
2024-07-02  1:18   ` [PATCH 03/12] xfs_repair: junk parent pointer attributes when filesystem doesn't support them Darrick J. Wong
2024-07-02  6:42     ` Christoph Hellwig
2024-07-02  1:18   ` [PATCH 04/12] xfs_repair: add parent pointers when messing with /lost+found Darrick J. Wong
2024-07-02  6:42     ` Christoph Hellwig
2024-07-02  1:18   ` [PATCH 05/12] xfs_repair: junk duplicate hashtab entries when processing sf dirents Darrick J. Wong
2024-07-02  6:43     ` Christoph Hellwig
2024-07-02  1:19   ` [PATCH 06/12] xfs_repair: build a parent pointer index Darrick J. Wong
2024-07-02  6:45     ` Christoph Hellwig
2024-07-02  1:19   ` [PATCH 07/12] xfs_repair: move the global dirent name store to a separate object Darrick J. Wong
2024-07-02  6:45     ` Christoph Hellwig
2024-07-02  1:19   ` [PATCH 08/12] xfs_repair: deduplicate strings stored in string blob Darrick J. Wong
2024-07-02  6:46     ` Christoph Hellwig
2024-07-02  1:19   ` [PATCH 09/12] xfs_repair: check parent pointers Darrick J. Wong
2024-07-02  6:47     ` Christoph Hellwig
2024-07-02  1:20   ` [PATCH 10/12] xfs_repair: dump garbage parent pointer attributes Darrick J. Wong
2024-07-02  6:47     ` Christoph Hellwig
2024-07-02  1:20   ` [PATCH 11/12] xfs_repair: update ondisk parent pointer records Darrick J. Wong
2024-07-02  6:47     ` Christoph Hellwig
2024-07-02  1:20   ` [PATCH 12/12] xfs_repair: wipe ondisk parent pointers when there are none Darrick J. Wong
2024-07-02  6:47     ` Christoph Hellwig
2024-07-02  0:52 ` [PATCHSET v13.7 14/16] xfsprogs: detect and correct directory tree problems Darrick J. Wong
2024-07-02  1:20   ` [PATCH 1/5] libfrog: add directory tree structure scrubber to scrub library Darrick J. Wong
2024-07-02  6:48     ` Christoph Hellwig
2024-07-02  1:21   ` [PATCH 2/5] xfs_spaceman: report directory tree corruption in the health information Darrick J. Wong
2024-07-02  6:48     ` Christoph Hellwig
2024-07-02  1:21   ` [PATCH 3/5] xfs_scrub: fix erroring out of check_inode_names Darrick J. Wong
2024-07-02  6:48     ` Christoph Hellwig
2024-07-02  1:21   ` [PATCH 4/5] xfs_scrub: detect and repair directory tree corruptions Darrick J. Wong
2024-07-02  6:49     ` Christoph Hellwig
2024-07-02  1:21   ` [PATCH 5/5] xfs_scrub: defer phase5 file scans if dirloop fails Darrick J. Wong
2024-07-02  6:49     ` Christoph Hellwig
2024-07-02  0:53 ` [PATCHSET v30.7 15/16] xfs_scrub: vectorize kernel calls Darrick J. Wong
2024-07-02  1:22   ` [PATCH 01/10] man: document vectored scrub mode Darrick J. Wong
2024-07-02  6:56     ` Christoph Hellwig
2024-07-02  1:22   ` [PATCH 02/10] libfrog: support vectored scrub Darrick J. Wong
2024-07-02  6:56     ` Christoph Hellwig
2024-07-02  1:22   ` [PATCH 03/10] xfs_io: " Darrick J. Wong
2024-07-02  6:57     ` Christoph Hellwig
2024-07-02  1:22   ` [PATCH 04/10] xfs_scrub: split the scrub epilogue code into a separate function Darrick J. Wong
2024-07-02  6:57     ` Christoph Hellwig
2024-07-02  1:23   ` [PATCH 05/10] xfs_scrub: split the repair " Darrick J. Wong
2024-07-02  6:57     ` Christoph Hellwig
2024-07-02  1:23   ` [PATCH 06/10] xfs_scrub: convert scrub and repair epilogues to use xfs_scrub_vec Darrick J. Wong
2024-07-02  6:57     ` Christoph Hellwig
2024-07-02  1:23   ` [PATCH 07/10] xfs_scrub: vectorize scrub calls Darrick J. Wong
2024-07-02  6:58     ` Christoph Hellwig
2024-07-02  1:23   ` [PATCH 08/10] xfs_scrub: vectorize repair calls Darrick J. Wong
2024-07-02  6:58     ` Christoph Hellwig
2024-07-02  1:24   ` [PATCH 09/10] xfs_scrub: use scrub barriers to reduce kernel calls Darrick J. Wong
2024-07-02  6:58     ` Christoph Hellwig
2024-07-02  1:24   ` [PATCH 10/10] xfs_scrub: try spot repairs of metadata items to make scrub progress Darrick J. Wong
2024-07-02  6:59     ` Christoph Hellwig
2024-07-02  0:53 ` [PATCHSET v30.7 16/16] xfs_repair: small remote symlinks are ok Darrick J. Wong
2024-07-02  1:24   ` [PATCH 1/1] xfs_repair: allow symlinks with short remote targets Darrick J. Wong
2024-07-02  6:59     ` Christoph Hellwig
  -- strict thread matches above, loose matches on Subject: below --
2024-07-30  0:21 [PATCHSET v13.8 18/23] xfsprogs: Parent Pointers Darrick J. Wong
2024-07-30  1:22 ` [PATCH 15/24] xfs_db: report parent pointers embedded in xattrs Darrick J. Wong

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).