tag name | scrub-detect-refcount-gaps_2022-10-14 (91868779b2efce2f3202bf4b89b23eb9670cc1ba) |
tag date | 2022-10-14 14:18:22 -0700 |
tagged by | Darrick J. Wong <djwong@kernel.org> |
tagged object | commit 472d7f6597... |
xfs: detect incorrect gaps in refcount btree
The next few patchsets address a deficiency in scrub that I found while
QAing the refcount btree scrubber. If there's a gap between refcount
records, we need to cross-reference that gap with the reverse mappings
to ensure that there are no overlapping records in the rmap btree. If
we find any, then the refcount btree is not consistent. This is not a
property that is specific to the refcount btree; they all need to have
this sort of keyspace scanning logic to detect inconsistencies.
To do this accurately, we need to be able to scan the keyspace of a
btree (which we already do) to be able to tell the caller if the
keyspace is empty, sparse, or fully covered by records. The first few
patches add the keyspace scanner to the generic btree code, along with
the ability to mask off parts of btree keys because when we scan the
rmapbt, we only care about space usage, not the owners.
The final patch closes the scanning gap in the refcountbt scanner.
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEUzaAxoMeQq6m2jMV+H93GTRKtOsFAmNJ0h4ACgkQ+H93GTRK
tOs6CBAAp6dtkT3ID/aC6yKOIKSSAHoAMoMWPYgOdJtSZRLvVDel2DjIvLn/xoYT
poWY7iwQTNTctDJ3S8sryPjVn2NfjxTLe+Q73pqHtlacNJVneflH5QYueFBPVF5F
ycNhUFgeU9DfNtnRAyL714aY5m/tYbK9sARMAK/llbAUzmc9eumna6thXIguRG8Z
u7dXfrdgyVphYw7cIH1FcjTagzMYF8TBEoJCaDPQXgKpV8xEDGM+8+OVcI5imBaM
y2vqDi2yrWoidQVKWUJWvdPnBeF9IvGM46tyNi/mvxa66Cvip8gp5KJuBwwZz5y+
3x8nhJnI0Z1bhp6VigeQUgIDXn8qk0b2W1gNUxJcTVRjJ0OdgpNSEYLnqlgpBgyH
17j/RCTT+YDD5klyQMdMCtYwlQFvKdNXO3K/Xmkj3VaB97D1MwzFQfvsWazoaLcT
mpXYb7cWdt/qOiWdT+PmfFubHHR+nc756RjMj963d5ZoYkru9DRZ7K1OkrC/DVwA
WVApCAiUu/4J8TFAPkKs9SWcVaBWdLlKd8JEHd+KFI05SJ1zMAYzB6HlzPRNINaY
FEmXZ9GZ0dclF/FOH8NPyhr5JhyUZISdOcZFwDiBeG0zu9xdXUp+18WCvf4hSszh
xDJrjkH3n+h4APJr6BtoW7NBeIB9xxkxDOxDuNypppT4BM9OXX4=
=WHA4
-----END PGP SIGNATURE-----