https://github.com/torvalds/linux
Revision ec4edd7b9d2038a97e0ba3fad8fc8492b0d12d35 authored by Kent Overstreet on 16 January 2024, 18:29:59 UTC, committed by Kent Overstreet on 21 January 2024, 18:27:10 UTC
bcachefs btree nodes are big - typically 256k - and btree roots are
pinned in memory. As we're now up to 18 btrees, we now have significant
memory overhead in mostly empty btree roots.

And in the future we're going to start enforcing that certain btree node
boundaries exist, to solve lock contention issues - analagous to XFS's
AGIs.

Thus, we need to start allocating smaller btree node buffers when we
can. This patch changes code that refers to the filesystem constant
c->opts.btree_node_size to refer to the btree node buffer size -
btree_buf_bytes() - where appropriate.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
1 parent 2acc59d
History
Tip revision: ec4edd7b9d2038a97e0ba3fad8fc8492b0d12d35 authored by Kent Overstreet on 16 January 2024, 18:29:59 UTC
bcachefs: Prep work for variable size btree node buffers
Tip revision: ec4edd7
File Mode Size
Documentation
LICENSES
arch
block
certs
crypto
drivers
fs
include
init
io_uring
ipc
kernel
lib
mm
net
rust
samples
scripts
security
sound
tools
usr
virt
.clang-format -rw-r--r-- 20.1 KB
.cocciconfig -rw-r--r-- 59 bytes
.get_maintainer.ignore -rw-r--r-- 151 bytes
.gitattributes -rw-r--r-- 105 bytes
.gitignore -rw-r--r-- 2.0 KB
.mailmap -rw-r--r-- 36.5 KB
.rustfmt.toml -rw-r--r-- 369 bytes
COPYING -rw-r--r-- 496 bytes
CREDITS -rw-r--r-- 100.2 KB
Kbuild -rw-r--r-- 2.5 KB
Kconfig -rw-r--r-- 555 bytes
MAINTAINERS -rw-r--r-- 714.2 KB
Makefile -rw-r--r-- 65.7 KB
README -rw-r--r-- 727 bytes

README

back to top