]> www.infradead.org Git - users/dwmw2/linux.git/commit
bcachefs: bch2_accounting_mem_gc()
authorKent Overstreet <kent.overstreet@linux.dev>
Thu, 6 Jun 2024 17:48:54 +0000 (13:48 -0400)
committerKent Overstreet <kent.overstreet@linux.dev>
Sun, 14 Jul 2024 23:00:15 +0000 (19:00 -0400)
commitf73e6bb6d6c70b72aff021237b8c4722cc43a919
treee59a561331929080cbcee9cb8e54277bc6b8a12d
parent2574e95a8b78ef853100d6889f154883fec989a2
bcachefs: bch2_accounting_mem_gc()

Add a new helper to free zeroed out accounting entries, and use it in
bch2_replicas_gc2(); bch2_replicas_gc2() was killing superblock replicas
entries if their corresponding accounting counters were nonzero, but
that's incorrect - the superblock replicas entry needs to exist if the
accounting entry exists, not if it's nonzero, because we check and
create the replicas entry when creating the new accounting entry - we
don't know when it's becoming nonzero.

Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
fs/bcachefs/disk_accounting.c
fs/bcachefs/disk_accounting.h
fs/bcachefs/replicas.c