]> git.ipfire.org Git - thirdparty/xfsprogs-dev.git/commit
xfs: support in-memory btrees
authorDarrick J. Wong <djwong@kernel.org>
Mon, 22 Apr 2024 17:01:11 +0000 (10:01 -0700)
committerDarrick J. Wong <djwong@kernel.org>
Mon, 3 Jun 2024 18:37:40 +0000 (11:37 -0700)
commitd466c8662efcf90fe12fedb2e65678f66c406522
tree4694ae2b66f2ff16a26c7dadd883a9aa6ac93f05
parent0e94002ff933d385f77f09771c6e599546b8bc17
xfs: support in-memory btrees

Source kernel commit: a095686a2383526d7315197e2419d84ee8470217

Adapt the generic btree cursor code to be able to create a btree whose
buffers come from a (presumably in-memory) buftarg with a header block
that's specific to in-memory btrees.  We'll connect this to other parts
of online scrub in the next patches.

Note that in-memory btrees always have a block size matching the system
memory page size for efficiency reasons.  There are also a few things we
need to do to finalize a btree update; that's covered in the next patch.

Signed-off-by: Darrick J. Wong <djwong@kernel.org>
Reviewed-by: Christoph Hellwig <hch@lst.de>
Reviewed-by: Carlos Maiolino <cmaiolino@redhat.com>
13 files changed:
include/libxfs.h
include/xfs_mount.h
include/xfs_trace.h
libxfs/Makefile
libxfs/buf_mem.c
libxfs/buf_mem.h
libxfs/libxfs_api_defs.h
libxfs/libxfs_io.h
libxfs/libxfs_priv.h
libxfs/xfs_btree.c
libxfs/xfs_btree.h
libxfs/xfs_btree_mem.c [new file with mode: 0644]
libxfs/xfs_btree_mem.h [new file with mode: 0644]