linux-xfs.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCHBOMB v2] xfsprogs: catch us up to 6.10
@ 2024-07-30  0:10 Darrick J. Wong
  2024-07-30  0:16 ` [PATCHSET 01/23] libxfs: fixes for 6.9 Darrick J. Wong
                   ` (22 more replies)
  0 siblings, 23 replies; 296+ messages in thread
From: Darrick J. Wong @ 2024-07-30  0:10 UTC (permalink / raw)
  To: Carlos Maiolino; +Cc: xfs

Hi Carlos,

For archival purposes, this is a resend of every patch that I have
queued (+ reviewed) for xfsprogs 6.10.  This will be followed by a pile
of pull requests for all that work.

v2: apply reviewed by tags, accumulate bugfixes

--Darrick

^ permalink raw reply	[flat|nested] 296+ messages in thread
* [PATCHSET v13.7 11/16] xfsprogs: Parent Pointers
@ 2024-07-02  0:52 Darrick J. Wong
  2024-07-02  1:15 ` [PATCH 19/24] xfs_db: make attr_set and attr_remove handle parent pointers Darrick J. Wong
  0 siblings, 1 reply; 296+ messages in thread
From: Darrick J. Wong @ 2024-07-02  0:52 UTC (permalink / raw)
  To: djwong, cem
  Cc: Allison Henderson, catherine.hoang, linux-xfs, allison.henderson,
	hch

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.

--D

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

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

fstests git tree:
https://git.kernel.org/cgit/linux/kernel/git/djwong/xfstests-dev.git/log/?h=pptrs

xfsdocs git tree:
https://git.kernel.org/cgit/linux/kernel/git/djwong/xfs-documentation.git/log/?h=pptrs
---
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             |    6 
 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, 2942 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:32 UTC | newest]

Thread overview: 296+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2024-07-30  0:10 [PATCHBOMB v2] xfsprogs: catch us up to 6.10 Darrick J. Wong
2024-07-30  0:16 ` [PATCHSET 01/23] libxfs: fixes for 6.9 Darrick J. Wong
2024-07-30  0:22   ` [PATCH 1/5] [PATCH v3] Remove support for split-/usr installs Darrick J. Wong
2024-07-30  0:22   ` [PATCH 2/5] repair: btree blocks are never on the RT subvolume Darrick J. Wong
2024-07-30  0:23   ` [PATCH 3/5] xfile: fix missing error unlock in xfile_fcb_find Darrick J. Wong
2024-07-30  0:23   ` [PATCH 4/5] xfs_repair: don't leak the rootdir inode when orphanage already exists Darrick J. Wong
2024-07-30  0:23   ` [PATCH 5/5] xfs_repair: don't crash on -vv Darrick J. Wong
2024-07-30  0:16 ` [PATCHSET 02/23] libxfs: sync with 6.10 Darrick J. Wong
2024-07-30  0:24   ` [PATCH 001/115] xfs: pass xfs_buf lookup flags to xfs_*read_agi Darrick J. Wong
2024-07-30  0:24   ` [PATCH 002/115] xfs: constify xfs_bmap_is_written_extent Darrick J. Wong
2024-07-30  0:24   ` [PATCH 003/115] xfs: introduce new file range exchange ioctl Darrick J. Wong
2024-07-30  0:24   ` [PATCH 004/115] xfs: create a incompat flag for atomic file mapping exchanges Darrick J. Wong
2024-07-30  0:25   ` [PATCH 005/115] xfs: introduce a file mapping exchange log intent item Darrick J. Wong
2024-07-30  0:25   ` [PATCH 006/115] xfs: create deferred log items for file mapping exchanges Darrick J. Wong
2024-07-30  0:25   ` [PATCH 007/115] xfs: add error injection to test file mapping exchange recovery Darrick J. Wong
2024-07-30  0:25   ` [PATCH 008/115] xfs: condense extended attributes after a mapping exchange operation Darrick J. Wong
2024-07-30  0:26   ` [PATCH 009/115] xfs: condense directories " Darrick J. Wong
2024-07-30  0:26   ` [PATCH 010/115] xfs: condense symbolic links " Darrick J. Wong
2024-07-30  0:26   ` [PATCH 011/115] xfs: make file range exchange support realtime files Darrick J. Wong
2024-07-30  0:26   ` [PATCH 012/115] xfs: capture inode generation numbers in the ondisk exchmaps log item Darrick J. Wong
2024-07-30  0:27   ` [PATCH 013/115] xfs: enable logged file mapping exchange feature Darrick J. Wong
2024-07-30  0:27   ` [PATCH 014/115] xfs: add an explicit owner field to xfs_da_args Darrick J. Wong
2024-07-30  0:27   ` [PATCH 015/115] xfs: use the xfs_da_args owner field to set new dir/attr block owner Darrick J. Wong
2024-07-30  0:27   ` [PATCH 016/115] xfs: validate attr leaf buffer owners Darrick J. Wong
2024-07-30  0:28   ` [PATCH 017/115] xfs: validate attr remote value " Darrick J. Wong
2024-07-30  0:28   ` [PATCH 018/115] xfs: validate dabtree node " Darrick J. Wong
2024-07-30  0:28   ` [PATCH 019/115] xfs: validate directory leaf " Darrick J. Wong
2024-07-30  0:28   ` [PATCH 020/115] xfs: validate explicit directory data " Darrick J. Wong
2024-07-30  0:29   ` [PATCH 021/115] xfs: validate explicit directory block " Darrick J. Wong
2024-07-30  0:29   ` [PATCH 022/115] xfs: validate explicit directory free block owners Darrick J. Wong
2024-07-30  0:29   ` [PATCH 023/115] xfs: use atomic extent swapping to fix user file fork data Darrick J. Wong
2024-07-30  0:30   ` [PATCH 024/115] xfs: repair extended attributes Darrick J. Wong
2024-07-30  0:30   ` [PATCH 025/115] xfs: expose xfs_bmap_local_to_extents for online repair Darrick J. Wong
2024-07-30  0:30   ` [PATCH 026/115] xfs: pass the owner to xfs_symlink_write_target Darrick J. Wong
2024-07-30  0:30   ` [PATCH 027/115] xfs: check unused nlink fields in the ondisk inode Darrick J. Wong
2024-07-30  0:31   ` [PATCH 028/115] xfs: try to avoid allocating from sick inode clusters Darrick J. Wong
2024-07-30  0:31   ` [PATCH 029/115] xfs: pin inodes that would otherwise overflow link count Darrick J. Wong
2024-07-30  0:31   ` [PATCH 030/115] xfs: Increase XFS_DEFER_OPS_NR_INODES to 5 Darrick J. Wong
2024-07-30  0:31   ` [PATCH 031/115] xfs: make XFS_TRANS_LOWMODE match the other XFS_TRANS_ definitions Darrick J. Wong
2024-07-30  0:32   ` [PATCH 032/115] xfs: refactor realtime inode locking Darrick J. Wong
2024-07-30  0:32   ` [PATCH 033/115] xfs: free RT extents after updating the bmap btree Darrick J. Wong
2024-07-30  0:32   ` [PATCH 034/115] xfs: move RT inode locking out of __xfs_bunmapi Darrick J. Wong
2024-07-30  0:32   ` [PATCH 035/115] xfs: split xfs_mod_freecounter Darrick J. Wong
2024-07-30  0:33   ` [PATCH 036/115] xfs: reinstate RT support in xfs_bmapi_reserve_delalloc Darrick J. Wong
2024-07-30  0:33   ` [PATCH 037/115] xfs: cleanup fdblock/frextent accounting in xfs_bmap_del_extent_delay Darrick J. Wong
2024-07-30  0:33   ` [PATCH 038/115] xfs: support RT inodes in xfs_mod_delalloc Darrick J. Wong
2024-07-30  0:33   ` [PATCH 039/115] xfs: rework splitting of indirect block reservations Darrick J. Wong
2024-07-30  0:34   ` [PATCH 040/115] xfs: stop the steal (of data blocks for RT indirect blocks) Darrick J. Wong
2024-07-30  0:34   ` [PATCH 041/115] xfs: remove XFS_DA_OP_REMOVE Darrick J. Wong
2024-07-30  0:34   ` [PATCH 042/115] xfs: remove XFS_DA_OP_NOTIME Darrick J. Wong
2024-07-30  0:34   ` [PATCH 043/115] xfs: remove xfs_da_args.attr_flags Darrick J. Wong
2024-07-30  0:35   ` [PATCH 044/115] xfs: make attr removal an explicit operation Darrick J. Wong
2024-07-30  0:35   ` [PATCH 045/115] xfs: rearrange xfs_da_args a bit to use less space Darrick J. Wong
2024-07-30  0:35   ` [PATCH 046/115] xfs: attr fork iext must be loaded before calling xfs_attr_is_leaf Darrick J. Wong
2024-07-30  0:36   ` [PATCH 047/115] xfs: fix missing check for invalid attr flags Darrick J. Wong
2024-07-30  0:36   ` [PATCH 048/115] xfs: restructure xfs_attr_complete_op a bit Darrick J. Wong
2024-07-30  0:36   ` [PATCH 049/115] xfs: use helpers to extract xattr op from opflags Darrick J. Wong
2024-07-30  0:36   ` [PATCH 050/115] xfs: enforce one namespace per attribute Darrick J. Wong
2024-07-30  0:37   ` [PATCH 051/115] xfs: rearrange xfs_attr_match parameters Darrick J. Wong
2024-07-30  0:37   ` [PATCH 052/115] xfs: check the flags earlier in xfs_attr_match Darrick J. Wong
2024-07-30  0:37   ` [PATCH 053/115] xfs: move xfs_attr_defer_add to xfs_attr_item.c Darrick J. Wong
2024-07-30  0:37   ` [PATCH 054/115] xfs: create a separate hashname function for extended attributes Darrick J. Wong
2024-07-30  0:38   ` [PATCH 055/115] xfs: add parent pointer support to attribute code Darrick J. Wong
2024-07-30  0:38   ` [PATCH 056/115] xfs: define parent pointer ondisk extended attribute format Darrick J. Wong
2024-07-30  0:38   ` [PATCH 057/115] xfs: allow xattr matching on name and value for parent pointers Darrick J. Wong
2024-07-30  0:38   ` [PATCH 058/115] xfs: create attr log item opcodes and formats " Darrick J. Wong
2024-07-30  0:39   ` [PATCH 059/115] xfs: record inode generation in xattr update log intent items Darrick J. Wong
2024-07-30  0:39   ` [PATCH 060/115] xfs: add parent pointer validator functions Darrick J. Wong
2024-07-30  0:39   ` [PATCH 061/115] xfs: extend transaction reservations for parent attributes Darrick J. Wong
2024-07-30  0:39   ` [PATCH 062/115] xfs: create a hashname function for parent pointers Darrick J. Wong
2024-07-30  0:40   ` [PATCH 063/115] xfs: parent pointer attribute creation Darrick J. Wong
2024-07-30  0:40   ` [PATCH 064/115] xfs: add parent attributes to link Darrick J. Wong
2024-07-30  0:40   ` [PATCH 065/115] xfs: add parent attributes to symlink Darrick J. Wong
2024-07-30  0:40   ` [PATCH 066/115] xfs: remove parent pointers in unlink Darrick J. Wong
2024-07-30  0:41   ` [PATCH 067/115] xfs: Add parent pointers to rename Darrick J. Wong
2024-07-30  0:41   ` [PATCH 068/115] xfs: don't return XFS_ATTR_PARENT attributes via listxattr Darrick J. Wong
2024-07-30  0:41   ` [PATCH 069/115] xfs: pass the attr value to put_listent when possible Darrick J. Wong
2024-07-30  0:42   ` [PATCH 070/115] xfs: split out handle management helpers a bit Darrick J. Wong
2024-07-30  0:42   ` [PATCH 071/115] xfs: add parent pointer ioctls Darrick J. Wong
2024-07-30  0:42   ` [PATCH 072/115] xfs: don't remove the attr fork when parent pointers are enabled Darrick J. Wong
2024-07-30  0:42   ` [PATCH 073/115] xfs: add a incompat feature bit for parent pointers Darrick J. Wong
2024-07-30  0:43   ` [PATCH 074/115] xfs: fix unit conversion error in xfs_log_calc_max_attrsetm_res Darrick J. Wong
2024-07-30  0:43   ` [PATCH 075/115] xfs: drop compatibility minimum log size computations for reflink Darrick J. Wong
2024-07-30  0:43   ` [PATCH 076/115] xfs: enable parent pointers Darrick J. Wong
2024-07-30  0:43   ` [PATCH 077/115] xfs: check dirents have " Darrick J. Wong
2024-07-30  0:44   ` [PATCH 078/115] xfs: remove some boilerplate from xfs_attr_set Darrick J. Wong
2024-07-30  0:44   ` [PATCH 079/115] xfs: make the reserved block permission flag explicit in xfs_attr_set Darrick J. Wong
2024-07-30  0:44   ` [PATCH 080/115] xfs: add raw parent pointer apis to support repair Darrick J. Wong
2024-07-30  0:44   ` [PATCH 081/115] xfs: remove pointless unlocked assertion Darrick J. Wong
2024-07-30  0:45   ` [PATCH 082/115] xfs: split xfs_bmap_add_attrfork into two pieces Darrick J. Wong
2024-07-30  0:45   ` [PATCH 083/115] xfs: actually rebuild the parent pointer xattrs Darrick J. Wong
2024-07-30  0:45   ` [PATCH 084/115] xfs: teach online scrub to find directory tree structure problems Darrick J. Wong
2024-07-30  0:45   ` [PATCH 085/115] xfs: report directory tree corruption in the health information Darrick J. Wong
2024-07-30  0:46   ` [PATCH 086/115] xfs: introduce vectored scrub mode Darrick J. Wong
2024-07-30  0:46   ` [PATCH 087/115] xfs: factor out a xfs_dir_lookup_args helper Darrick J. Wong
2024-07-30  0:46   ` [PATCH 088/115] xfs: factor out a xfs_dir_createname_args helper Darrick J. Wong
2024-07-30  0:46   ` [PATCH 089/115] xfs: factor out a xfs_dir_removename_args helper Darrick J. Wong
2024-07-30  0:47   ` [PATCH 090/115] xfs: factor out a xfs_dir_replace_args helper Darrick J. Wong
2024-07-30  0:47   ` [PATCH 091/115] xfs: refactor dir format helpers Darrick J. Wong
2024-07-30  0:47   ` [PATCH 092/115] xfs: make the seq argument to xfs_bmapi_convert_delalloc() optional Darrick J. Wong
2024-07-30  0:48   ` [PATCH 093/115] xfs: make xfs_bmapi_convert_delalloc() to allocate the target offset Darrick J. Wong
2024-07-30  0:48   ` [PATCH 094/115] xfs: fix error returns from xfs_bmapi_write Darrick J. Wong
2024-07-30  0:48   ` [PATCH 095/115] xfs: remove the unusued tmp_logflags variable in xfs_bmapi_allocate Darrick J. Wong
2024-07-30  0:48   ` [PATCH 096/115] xfs: lift a xfs_valid_startblock into xfs_bmapi_allocate Darrick J. Wong
2024-07-30  0:49   ` [PATCH 097/115] xfs: don't open code XFS_FILBLKS_MIN in xfs_bmapi_write Darrick J. Wong
2024-07-30  0:49   ` [PATCH 098/115] xfs: pass the actual offset and len to allocate to xfs_bmapi_allocate Darrick J. Wong
2024-07-30  0:49   ` [PATCH 099/115] xfs: remove the xfs_iext_peek_prev_extent call in xfs_bmapi_allocate Darrick J. Wong
2024-07-30  0:49   ` [PATCH 100/115] xfs: fix xfs_bmap_add_extent_delay_real for partial conversions Darrick J. Wong
2024-07-30  0:50   ` [PATCH 101/115] xfs: do not allocate the entire delalloc extent in xfs_bmapi_write Darrick J. Wong
2024-07-30  0:50   ` [PATCH 102/115] xfs: use unsigned ints for non-negative quantities in xfs_attr_remote.c Darrick J. Wong
2024-07-30  0:50   ` [PATCH 103/115] xfs: turn XFS_ATTR3_RMT_BUF_SPACE into a function Darrick J. Wong
2024-07-30  0:50   ` [PATCH 104/115] xfs: create a helper to compute the blockcount of a max sized remote value Darrick J. Wong
2024-07-30  0:51   ` [PATCH 105/115] xfs: minor cleanups of xfs_attr3_rmt_blocks Darrick J. Wong
2024-07-30  0:51   ` [PATCH 106/115] xfs: xfs_quota_unreserve_blkres can't fail Darrick J. Wong
2024-07-30  0:51   ` [PATCH 107/115] xfs: simplify iext overflow checking and upgrade Darrick J. Wong
2024-07-30  0:51   ` [PATCH 108/115] xfs: Stop using __maybe_unused in xfs_alloc.c Darrick J. Wong
2024-07-30  0:52   ` [PATCH 109/115] xfs: fix xfs_init_attr_trans not handling explicit operation codes Darrick J. Wong
2024-07-30  0:52   ` [PATCH 110/115] xfs: allow symlinks with short remote targets Darrick J. Wong
2024-07-30  0:52   ` [PATCH 111/115] xfs: Add cond_resched to block unmap range and reflink remap path Darrick J. Wong
2024-07-30  0:52   ` [PATCH 112/115] xfs: make sure sb_fdblocks is non-negative Darrick J. Wong
2024-07-30  0:53   ` [PATCH 113/115] xfs: restrict when we try to align cow fork delalloc to cowextsz hints Darrick J. Wong
2024-07-30  0:53   ` [PATCH 114/115] xfs: allow unlinked symlinks and dirs with zero size Darrick J. Wong
2024-07-30  0:53   ` [PATCH 115/115] xfs: fix direction in XFS_IOC_EXCHANGE_RANGE Darrick J. Wong
2024-07-30  0:17 ` [PATCHSET v30.9 03/23] xfsprogs: atomic file updates Darrick J. Wong
2024-07-30  0:54   ` [PATCH 01/12] man: document the exchange-range ioctl Darrick J. Wong
2024-07-30  0:54   ` [PATCH 02/12] man: document XFS_FSOP_GEOM_FLAGS_EXCHRANGE Darrick J. Wong
2024-07-30  0:54   ` [PATCH 03/12] libhandle: add support for bulkstat v5 Darrick J. Wong
2024-07-30  0:54   ` [PATCH 04/12] libfrog: add support for exchange range ioctl family Darrick J. Wong
2024-07-30  0:55   ` [PATCH 05/12] xfs_db: advertise exchange-range in the version command Darrick J. Wong
2024-07-30  0:55   ` [PATCH 06/12] xfs_logprint: support dumping exchmaps log items Darrick J. Wong
2024-07-30  0:55   ` [PATCH 07/12] xfs_fsr: convert to bulkstat v5 ioctls Darrick J. Wong
2024-07-30  0:55   ` [PATCH 08/12] xfs_fsr: skip the xattr/forkoff levering with the newer swapext implementations Darrick J. Wong
2024-07-30  0:56   ` [PATCH 09/12] xfs_io: create exchangerange command to test file range exchange ioctl Darrick J. Wong
2024-07-30  0:56   ` [PATCH 10/12] libfrog: advertise exchange-range support Darrick J. Wong
2024-07-30  0:56   ` [PATCH 11/12] xfs_repair: add exchange-range to file systems Darrick J. Wong
2024-07-30  0:56   ` [PATCH 12/12] mkfs: add a formatting option for exchange-range Darrick J. Wong
2024-07-30  0:17 ` [PATCHSET v30.9 04/23] xfsprogs: set and validate dir/attr block owners Darrick J. Wong
2024-07-30  0:57   ` [PATCH 1/1] xfs_{db,repair}: add an explicit owner field to xfs_da_args Darrick J. Wong
2024-07-30  0:17 ` [PATCHSET v30.9 05/23] xfsprogs: inode-related repair fixes Darrick J. Wong
2024-07-30  0:57   ` [PATCH 1/2] libxfs: port the bumplink function from the kernel Darrick J. Wong
2024-07-30  0:57   ` [PATCH 2/2] mkfs/repair: pin inodes that would otherwise overflow link count Darrick J. Wong
2024-07-30  0:18 ` [PATCHSET v30.9 06/23] xfs_scrub: fixes to the repair code Darrick J. Wong
2024-07-30  0:57   ` [PATCH 1/5] xfs_scrub: remove ALP_* flags namespace Darrick J. Wong
2024-07-30  0:58   ` [PATCH 2/5] xfs_scrub: move repair functions to repair.c Darrick J. Wong
2024-07-30  0:58   ` [PATCH 3/5] xfs_scrub: log when a repair was unnecessary Darrick J. Wong
2024-07-30  0:58   ` [PATCH 4/5] xfs_scrub: require primary superblock repairs to complete before proceeding Darrick J. Wong
2024-07-30  0:58   ` [PATCH 5/5] xfs_scrub: actually try to fix summary counters ahead of repairs Darrick J. Wong
2024-07-30  0:18 ` [PATCHSET v30.9 07/23] xfs_scrub: improve warnings about difficult repairs Darrick J. Wong
2024-07-30  0:59   ` [PATCH 1/8] xfs_scrub: fix missing scrub coverage for broken inodes Darrick J. Wong
2024-07-30  0:59   ` [PATCH 2/8] xfs_scrub: collapse trivial superblock scrub helpers Darrick J. Wong
2024-07-30  0:59   ` [PATCH 3/8] xfs_scrub: get rid of trivial fs metadata scanner helpers Darrick J. Wong
2024-07-30  1:00   ` [PATCH 4/8] xfs_scrub: split up the mustfix repairs and difficulty assessment functions Darrick J. Wong
2024-07-30  1:00   ` [PATCH 5/8] xfs_scrub: add missing repair types to the mustfix and difficulty assessment Darrick J. Wong
2024-07-30  1:00   ` [PATCH 6/8] xfs_scrub: any inconsistency in metadata should trigger difficulty warnings Darrick J. Wong
2024-07-30  1:00   ` [PATCH 7/8] xfs_scrub: warn about difficult repairs to rt and quota metadata Darrick J. Wong
2024-07-30  1:01   ` [PATCH 8/8] xfs_scrub: enable users to bump information messages to warnings Darrick J. Wong
2024-07-30  0:18 ` [PATCHSET v30.9 08/23] xfs_scrub: track data dependencies for repairs Darrick J. Wong
2024-07-30  1:01   ` [PATCH 1/9] xfs_scrub: track repair items by principal, not by individual repairs Darrick J. Wong
2024-07-30  1:01   ` [PATCH 2/9] xfs_scrub: use repair_item to direct repair activities Darrick J. Wong
2024-07-30  1:01   ` [PATCH 3/9] xfs_scrub: remove action lists from phaseX code Darrick J. Wong
2024-07-30  1:02   ` [PATCH 4/9] xfs_scrub: remove scrub_metadata_file Darrick J. Wong
2024-07-30  1:02   ` [PATCH 5/9] xfs_scrub: boost the repair priority of dependencies of damaged items Darrick J. Wong
2024-07-30  1:02   ` [PATCH 6/9] xfs_scrub: clean up repair_item_difficulty a little Darrick J. Wong
2024-07-30  1:02   ` [PATCH 7/9] xfs_scrub: check dependencies of a scrub type before repairing Darrick J. Wong
2024-07-30  1:03   ` [PATCH 8/9] xfs_scrub: retry incomplete repairs Darrick J. Wong
2024-07-30  1:03   ` [PATCH 9/9] xfs_scrub: remove unused action_list fields Darrick J. Wong
2024-07-30  0:18 ` [PATCHSET v30.9 09/23] xfs_scrub: use scrub_item to track check progress Darrick J. Wong
2024-07-30  1:03   ` [PATCH 1/5] xfs_scrub: start tracking scrub state in scrub_item Darrick J. Wong
2024-07-30  1:03   ` [PATCH 2/5] xfs_scrub: remove enum check_outcome Darrick J. Wong
2024-07-30  1:04   ` [PATCH 3/5] xfs_scrub: refactor scrub_meta_type out of existence Darrick J. Wong
2024-07-30  1:04   ` [PATCH 4/5] xfs_scrub: hoist repair retry loop to repair_item_class Darrick J. Wong
2024-07-30  1:04   ` [PATCH 5/5] xfs_scrub: hoist scrub retry loop to scrub_item_check_file Darrick J. Wong
2024-07-30  0:19 ` [PATCHSET v30.9 10/23] xfs_scrub: improve scheduling of repair items Darrick J. Wong
2024-07-30  1:05   ` [PATCH 1/4] libfrog: enhance ptvar to support initializer functions Darrick J. Wong
2024-07-30  1:05   ` [PATCH 2/4] xfs_scrub: improve thread scheduling repair items during phase 4 Darrick J. Wong
2024-07-30  1:05   ` [PATCH 3/4] xfs_scrub: recheck entire metadata objects after corruption repairs Darrick J. Wong
2024-07-30  1:05   ` [PATCH 4/4] xfs_scrub: try to repair space metadata before file metadata Darrick J. Wong
2024-07-30  0:19 ` [PATCHSET v30.9 11/23] xfs_scrub: detect deceptive filename extensions Darrick J. Wong
2024-07-30  1:06   ` [PATCH 01/13] xfs_scrub: use proper UChar string iterators Darrick J. Wong
2024-07-30  1:06   ` [PATCH 02/13] xfs_scrub: hoist code that removes ignorable characters Darrick J. Wong
2024-07-30  1:06   ` [PATCH 03/13] xfs_scrub: add a couple of omitted invisible code points Darrick J. Wong
2024-07-30  1:06   ` [PATCH 04/13] xfs_scrub: avoid potential UAF after freeing a duplicate name entry Darrick J. Wong
2024-07-30  1:07   ` [PATCH 05/13] xfs_scrub: guard against libicu returning negative buffer lengths Darrick J. Wong
2024-07-30  1:07   ` [PATCH 06/13] xfs_scrub: hoist non-rendering character predicate Darrick J. Wong
2024-07-30  1:07   ` [PATCH 07/13] xfs_scrub: store bad flags with the name entry Darrick J. Wong
2024-07-30  1:07   ` [PATCH 08/13] xfs_scrub: rename UNICRASH_ZERO_WIDTH to UNICRASH_INVISIBLE Darrick J. Wong
2024-07-30  1:08   ` [PATCH 09/13] xfs_scrub: type-coerce the UNICRASH_* flags Darrick J. Wong
2024-07-30  1:08   ` [PATCH 10/13] xfs_scrub: reduce size of struct name_entry Darrick J. Wong
2024-07-30  1:08   ` [PATCH 11/13] xfs_scrub: rename struct unicrash.normalizer Darrick J. Wong
2024-07-30  1:08   ` [PATCH 12/13] xfs_scrub: report deceptive file extensions Darrick J. Wong
2024-07-30  1:09   ` [PATCH 13/13] xfs_scrub: dump unicode points Darrick J. Wong
2024-07-30  0:19 ` [PATCHSET v30.9 12/23] xfs_scrub: move fstrim to a separate phase Darrick J. Wong
2024-07-30  1:09   ` [PATCH 1/7] xfs_scrub: move FITRIM to phase 8 Darrick J. Wong
2024-07-30  1:09   ` [PATCH 2/7] xfs_scrub: ignore phase 8 if the user disabled fstrim Darrick J. Wong
2024-07-30  1:09   ` [PATCH 3/7] xfs_scrub: collapse trim_filesystem Darrick J. Wong
2024-07-30  1:10   ` [PATCH 4/7] xfs_scrub: fix the work estimation for phase 8 Darrick J. Wong
2024-07-30  1:10   ` [PATCH 5/7] xfs_scrub: report FITRIM errors properly Darrick J. Wong
2024-07-30  1:10   ` [PATCH 6/7] xfs_scrub: don't call FITRIM after runtime errors Darrick J. Wong
2024-07-30  1:11   ` [PATCH 7/7] xfs_scrub: improve responsiveness while trimming the filesystem Darrick J. Wong
2024-07-30  0:19 ` [PATCHSET v30.9 13/23] xfs_scrub: use free space histograms to reduce fstrim runtime Darrick J. Wong
2024-07-30  1:11   ` [PATCH 1/7] libfrog: hoist free space histogram code Darrick J. Wong
2024-07-30  1:11   ` [PATCH 2/7] libfrog: print wider columns for free space histogram Darrick J. Wong
2024-07-30  1:11   ` [PATCH 3/7] libfrog: print cdf of free space buckets Darrick J. Wong
2024-07-30  1:12   ` [PATCH 4/7] xfs_scrub: don't close stdout when closing the progress bar Darrick J. Wong
2024-07-30  1:12   ` [PATCH 5/7] xfs_scrub: remove pointless spacemap.c arguments Darrick J. Wong
2024-07-30  1:12   ` [PATCH 6/7] xfs_scrub: collect free space histograms during phase 7 Darrick J. Wong
2024-07-30  1:12   ` [PATCH 7/7] xfs_scrub: tune fstrim minlen parameter based on free space histograms Darrick J. Wong
2024-07-30  0:20 ` [PATCHSET v30.9 14/23] xfs_scrub: tighten security of systemd services Darrick J. Wong
2024-07-30  1:13   ` [PATCH 1/6] xfs_scrub: allow auxiliary pathnames for sandboxing Darrick J. Wong
2024-07-30  1:13   ` [PATCH 2/6] xfs_scrub.service: reduce background CPU usage to less than one core if possible Darrick J. Wong
2024-07-30  1:13   ` [PATCH 3/6] xfs_scrub: use dynamic users when running as a systemd service Darrick J. Wong
2024-07-30  1:13   ` [PATCH 4/6] xfs_scrub: tighten up the security on the background " Darrick J. Wong
2024-07-30  1:14   ` [PATCH 5/6] xfs_scrub_fail: " Darrick J. Wong
2024-07-30  1:14   ` [PATCH 6/6] xfs_scrub_all: " Darrick J. Wong
2024-07-30  0:20 ` [PATCHSET v30.9 15/23] xfs_scrub_all: automatic media scan service Darrick J. Wong
2024-07-30  1:14   ` [PATCH 1/6] xfs_scrub_all: only use the xfs_scrub@ systemd services in service mode Darrick J. Wong
2024-07-30  1:14   ` [PATCH 2/6] xfs_scrub_all: remove journalctl background process Darrick J. Wong
2024-07-30  1:15   ` [PATCH 3/6] xfs_scrub_all: support metadata+media scans of all filesystems Darrick J. Wong
2024-07-30  1:15   ` [PATCH 4/6] xfs_scrub_all: enable periodic file data scrubs automatically Darrick J. Wong
2024-07-30  1:15   ` [PATCH 5/6] xfs_scrub_all: trigger automatic media scans once per month Darrick J. Wong
2024-07-30  1:15   ` [PATCH 6/6] xfs_scrub_all: failure reporting for the xfs_scrub_all job Darrick J. Wong
2024-07-30  0:20 ` [PATCHSET v30.9 16/23] xfs_scrub_all: improve systemd handling Darrick J. Wong
2024-07-30  1:16   ` [PATCH 1/5] xfs_scrub_all: encapsulate all the subprocess code in an object Darrick J. Wong
2024-07-30  1:16   ` [PATCH 2/5] xfs_scrub_all: encapsulate all the systemctl " Darrick J. Wong
2024-07-30  1:16   ` [PATCH 3/5] xfs_scrub_all: add CLI option for easier debugging Darrick J. Wong
2024-07-30  1:17   ` [PATCH 4/5] xfs_scrub_all: convert systemctl calls to dbus Darrick J. Wong
2024-07-30  1:17   ` [PATCH 5/5] xfs_scrub_all: implement retry and backoff for dbus calls Darrick J. Wong
2024-07-30  0:20 ` [PATCHSET v13.8 17/23] xfsprogs: improve extended attribute validation Darrick J. Wong
2024-07-30  1:17   ` [PATCH 1/6] xfs_scrub_all: fail fast on masked units Darrick J. Wong
2024-07-30  1:17   ` [PATCH 2/6] xfs_scrub: automatic downgrades to dry-run mode in service mode Darrick J. Wong
2024-07-30  1:18   ` [PATCH 3/6] xfs_scrub: add an optimization-only mode Darrick J. Wong
2024-07-30  1:18   ` [PATCH 4/6] xfs_repair: check free space requirements before allowing upgrades Darrick J. Wong
2024-07-30  1:18   ` [PATCH 5/6] xfs_repair: enforce one namespace bit per extended attribute Darrick J. Wong
2024-07-30  1:18   ` [PATCH 6/6] xfs_repair: check for unknown flags in attr entries Darrick J. Wong
2024-07-30  0:21 ` [PATCHSET v13.8 18/23] xfsprogs: Parent Pointers Darrick J. Wong
2024-07-30  1:19   ` [PATCH 01/24] libxfs: create attr log item opcodes and formats for parent pointers Darrick J. Wong
2024-07-30  1:19   ` [PATCH 02/24] xfs_{db,repair}: implement new attr hash value function Darrick J. Wong
2024-07-30  1:19   ` [PATCH 03/24] xfs_logprint: dump new attr log item fields Darrick J. Wong
2024-07-30  1:19   ` [PATCH 04/24] man: document the XFS_IOC_GETPARENTS ioctl Darrick J. Wong
2024-07-30  1:20   ` [PATCH 05/24] libfrog: report parent pointers to userspace Darrick J. Wong
2024-07-30  1:20   ` [PATCH 06/24] libfrog: add parent pointer support code Darrick J. Wong
2024-07-30  1:20   ` [PATCH 07/24] xfs_io: adapt parent command to new parent pointer ioctls Darrick J. Wong
2024-07-30  1:20   ` [PATCH 08/24] xfs_io: Add i, n and f flags to parent command Darrick J. Wong
2024-07-30  1:21   ` [PATCH 09/24] xfs_logprint: decode parent pointers in ATTRI items fully Darrick J. Wong
2024-07-30  1:21   ` [PATCH 10/24] xfs_spaceman: report file paths Darrick J. Wong
2024-07-30  1:21   ` [PATCH 11/24] xfs_scrub: use parent pointers when possible to report file operations Darrick J. Wong
2024-07-30  1:21   ` [PATCH 12/24] xfs_scrub: use parent pointers to report lost file data Darrick J. Wong
2024-07-30  1:22   ` [PATCH 13/24] xfs_db: report parent pointers in version command Darrick J. Wong
2024-07-30  1:22   ` [PATCH 14/24] xfs_db: report parent bit on xattrs Darrick J. Wong
2024-07-30  1:22   ` [PATCH 15/24] xfs_db: report parent pointers embedded in xattrs Darrick J. Wong
2024-07-30  1:23   ` [PATCH 16/24] xfs_db: obfuscate dirent and parent pointer names consistently Darrick J. Wong
2024-07-30  1:23   ` [PATCH 17/24] libxfs: export attr3_leaf_hdr_from_disk via libxfs_api_defs.h Darrick J. Wong
2024-07-30  1:23   ` [PATCH 18/24] xfs_db: add a parents command to list the parents of a file Darrick J. Wong
2024-07-30  1:23   ` [PATCH 19/24] xfs_db: make attr_set and attr_remove handle parent pointers Darrick J. Wong
2024-07-30  1:24   ` [PATCH 20/24] xfs_db: add link and unlink expert commands Darrick J. Wong
2024-07-30  1:24   ` [PATCH 21/24] xfs_db: compute hashes of parent pointers Darrick J. Wong
2024-07-30  1:24   ` [PATCH 22/24] libxfs: create new files with attr forks if necessary Darrick J. Wong
2024-07-30  1:24   ` [PATCH 23/24] mkfs: Add parent pointers during protofile creation Darrick J. Wong
2024-07-30  1:25   ` [PATCH 24/24] mkfs: enable formatting with parent pointers Darrick J. Wong
2024-07-30  0:21 ` [PATCHSET v13.8 19/23] xfsprogs: scrubbing for " Darrick J. Wong
2024-07-30  1:25   ` [PATCH 1/2] xfs: create a blob array data structure Darrick J. Wong
2024-07-30  1:25   ` [PATCH 2/2] man2: update ioctl_xfs_scrub_metadata.2 for parent pointers Darrick J. Wong
2024-07-30  0:21 ` [PATCHSET v13.8 20/23] xfsprogs: offline repair " Darrick J. Wong
2024-07-30  1:25   ` [PATCH 01/12] xfs_db: remove some boilerplate from xfs_attr_set Darrick J. Wong
2024-07-30  1:26   ` [PATCH 02/12] xfs_db: actually report errors from libxfs_attr_set Darrick J. Wong
2024-07-30  1:26   ` [PATCH 03/12] xfs_repair: junk parent pointer attributes when filesystem doesn't support them Darrick J. Wong
2024-07-30  1:26   ` [PATCH 04/12] xfs_repair: add parent pointers when messing with /lost+found Darrick J. Wong
2024-07-30  1:26   ` [PATCH 05/12] xfs_repair: junk duplicate hashtab entries when processing sf dirents Darrick J. Wong
2024-07-30  1:27   ` [PATCH 06/12] xfs_repair: build a parent pointer index Darrick J. Wong
2024-07-30  1:27   ` [PATCH 07/12] xfs_repair: move the global dirent name store to a separate object Darrick J. Wong
2024-07-30  1:27   ` [PATCH 08/12] xfs_repair: deduplicate strings stored in string blob Darrick J. Wong
2024-07-30  1:27   ` [PATCH 09/12] xfs_repair: check parent pointers Darrick J. Wong
2024-07-30  1:28   ` [PATCH 10/12] xfs_repair: dump garbage parent pointer attributes Darrick J. Wong
2024-07-30  1:28   ` [PATCH 11/12] xfs_repair: update ondisk parent pointer records Darrick J. Wong
2024-07-30  1:28   ` [PATCH 12/12] xfs_repair: wipe ondisk parent pointers when there are none Darrick J. Wong
2024-07-30  0:21 ` [PATCHSET v13.8 21/23] xfsprogs: detect and correct directory tree problems Darrick J. Wong
2024-07-30  1:29   ` [PATCH 1/5] libfrog: add directory tree structure scrubber to scrub library Darrick J. Wong
2024-07-30  1:29   ` [PATCH 2/5] xfs_spaceman: report directory tree corruption in the health information Darrick J. Wong
2024-07-30  1:29   ` [PATCH 3/5] xfs_scrub: fix erroring out of check_inode_names Darrick J. Wong
2024-07-30  1:29   ` [PATCH 4/5] xfs_scrub: detect and repair directory tree corruptions Darrick J. Wong
2024-07-30  1:30   ` [PATCH 5/5] xfs_scrub: defer phase5 file scans if dirloop fails Darrick J. Wong
2024-07-30  0:22 ` [PATCHSET v30.9 22/23] xfs_scrub: vectorize kernel calls Darrick J. Wong
2024-07-30  1:30   ` [PATCH 01/10] man: document vectored scrub mode Darrick J. Wong
2024-07-30  1:30   ` [PATCH 02/10] libfrog: support vectored scrub Darrick J. Wong
2024-07-30  1:30   ` [PATCH 03/10] xfs_io: " Darrick J. Wong
2024-07-30  1:31   ` [PATCH 04/10] xfs_scrub: split the scrub epilogue code into a separate function Darrick J. Wong
2024-07-30  1:31   ` [PATCH 05/10] xfs_scrub: split the repair " Darrick J. Wong
2024-07-30  1:31   ` [PATCH 06/10] xfs_scrub: convert scrub and repair epilogues to use xfs_scrub_vec Darrick J. Wong
2024-07-30  1:31   ` [PATCH 07/10] xfs_scrub: vectorize scrub calls Darrick J. Wong
2024-07-30  1:32   ` [PATCH 08/10] xfs_scrub: vectorize repair calls Darrick J. Wong
2024-07-30  1:32   ` [PATCH 09/10] xfs_scrub: use scrub barriers to reduce kernel calls Darrick J. Wong
2024-07-30  1:32   ` [PATCH 10/10] xfs_scrub: try spot repairs of metadata items to make scrub progress Darrick J. Wong
2024-07-30  0:22 ` [PATCHSET v30.9 23/23] xfs_repair: fixes for kernel 6.10 Darrick J. Wong
2024-07-30  1:32   ` [PATCH 1/1] xfs_repair: allow symlinks with short remote targets Darrick J. Wong
  -- strict thread matches above, loose matches on Subject: below --
2024-07-02  0:52 [PATCHSET v13.7 11/16] xfsprogs: Parent Pointers Darrick J. Wong
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

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).