tag name | repair-fscounters_2022-10-14 (ece6a4d29eff7da3a65af7fc4039dd064e5fa180) |
tag date | 2022-10-14 14:18:48 -0700 |
tagged by | Darrick J. Wong <djwong@kernel.org> |
tagged object | commit 1328f60bdf... |
xfs: online repair for fs summary counters
A longstanding deficiency in the online fs summary counter scrubbing
code is that it hasn't any means to quiesce the incore percpu counters
while it's running. There is no way to coordinate with other threads
are reserving or freeing free space simultaneously, which leads to false
error reports. Right now, if the discrepancy is large, we just sort of
shrug and bail out with an incomplete flag, but this is lame.
For repair activity, we actually /do/ need to stabilize the counters to
get an accurate reading and install it in the percpu counter. To
improve the former and enable the latter, allow the fscounters online
fsck code to perform an exclusive mini-freeze on the filesystem. The
exclusivity prevents userspace from thawing while we're running, and the
mini-freeze means that we don't wait for the log to quiesce, which will
make both speedier.
Signed-off-by: Darrick J. Wong <djwong@kernel.org>
-----BEGIN PGP SIGNATURE-----
iQIzBAABCgAdFiEEUzaAxoMeQq6m2jMV+H93GTRKtOsFAmNJ0jgACgkQ+H93GTRK
tOsqJhAAjwJm7vzjCVZDdVo+u88t1BX2j7kg5T1zBxXGXmP6E/X1LikVSh6tOcrN
P4B2nqu93Gf73VKXEM+uf3N/z/RxAL+9xtseKfX8bgMJYmJQcUjwCtYNkXy9NH93
s0ZoNExd2wohptnF5b/RHOxQ0LmQMvuU6t4vUzfN5uIUkRKrgoBV52ZSOl+Fx01M
BYiA+X94IC7F+uEjGW6cgP7Qz7P+lpA2nZUXQaRj8rWBR91o+HyHGlZ2viM4AIA4
Taf2DwXTQ2FTKcQ0Veg1mP9Cwr4V6BjR0EXaNiMFceho6fZ0hXELFVhAoFtO6vtg
LxwkMpxljDFfdS3+8P9ZCttBFFF7EIh33yGzjrlPT39HBCVCRLBmiHcrVjN7agBD
Cf/E39WowoAqf6STynWHRVFaCmqqWmWbprACETnr2w20NNuGLNULDupcCUqwkLUm
ahWjD3sPEkG7pyzhsJLkMGyoPXNE6LXFSuoy/p7dFfsPgUR2Mruxvlpb+UuukFdx
dTu+hFlAs2N166IF17xIXbZbcwNe1Xp8Rli5N+RrwZn4RHgn0dtsscba+F23RXGh
Xu8SKsUJaGuYR1QmV48vgSH/tV15eMHvY4Ct1k3omEp+duuQNiOcQvFNc2mnNNGX
UGdQad+ZBOQ9UVcsCN06GgCQfvQJ6qNz3+xTMYSCaXGVrXXwWWU=
=rmYz
-----END PGP SIGNATURE-----