summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/gecko.py
diff options
context:
space:
mode:
authorKent Overstreet <kent.overstreet@linux.dev>2024-11-16 00:31:54 +0300
committerKent Overstreet <kent.overstreet@linux.dev>2024-12-29 21:30:39 +0300
commitc738866e47ef2e4d543698f0ab370ffe2b7e0d59 (patch)
tree2f6f532006d3b976af6dd2d75a274013cb467be0 /tools/perf/scripts/python/gecko.py
parent056cae1c00b9773aa69791f4703262f690c28cdb (diff)
downloadlinux-c738866e47ef2e4d543698f0ab370ffe2b7e0d59.tar.xz
bcachefs: check_extents_to_backpointers() now only checks buckets with mismatches
Instead of walking every extent and every backpointer it points to, first sum up backpointers in each bucket and check for mismatches, and only look for missing backpointers if mismatches were detected, and only check extents in those buckets. This is a major fsck scalability improvement, since the two backpointers passes (backpointers -> extents and extents -> backpointers) are the most expensive fsck passes by far. Additionally, to speed up the upgrade for backpointer bucket gens, or in situations when we have to rebuild alloc info, add a special case for when no backpointers are found in a bucket - don't check each individual backpointer (in particular, avoiding the write buffer flushes), just recreate them. Signed-off-by: Kent Overstreet <kent.overstreet@linux.dev>
Diffstat (limited to 'tools/perf/scripts/python/gecko.py')
0 files changed, 0 insertions, 0 deletions