tag name | repair-fscounters_2022-11-09 (ae3ce65d712ae24a2326c37a4b15ecfc294ea216) |
tag date | 2022-11-09 19:10:08 -0800 |
tagged by | Darrick J. Wong <djwong@kernel.org> |
tagged object | commit 83e7147651... |
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+H93GTRKtOsFAmNsa5AACgkQ+H93GTRK
tOtJAg//Ss2c/Eoqs2UehH6qEFdq/gYGqKOPWKliDknit6fvwwVEpNUJrVNIyjY7
DxQ9e3FdI8QbffaVn3GecUnDS9j7xOLvJSnu6j5fEOyvaN151He9LLSyz6eG60cZ
3s6WWJ+jKHAPqHlgwH2WnQ8pvtLg9SBngcty4vVjknrm4+CsMlCzL1IVjBlZTTkB
spcIzxQagflZnLYTP8aBHPONiWaNVJ3wIfYyu+glXVT6MCcFYGBSWpa6f04P/um0
py8xSo5uQNC78bCQfGRbSJTX/+ROvDcXBGTKOSjQHzh0yyQKdGUygr9WGyMHxq5N
ER4fqKGwfrBFZsoGP4Yt4MC9hGqBOgNOtrV8k91Otdgq/UB8yRRicclY6ndwWDA5
1AJGx+Tgdhbne/fz9FV8ZGpDJv/pkUfqKmQaHa26PQoGxfOWjl//0sE/ktWcF8nJ
7WAXW58W7WJyFT3xGWx9UKFnJimAi2QpIRdIKo/kF7PibAxgDQtKHpxb2HbznJ+h
aLcY9jWkMB55o0H21Rpyn/ktHXQ2DMT+lFqae7gJYZLPxOrbGEfR54ar384mn1HD
VsDIoUbYbtPgy+XCh0240EJxHc6b3phNg1xhdbSP+EGgbqjypNxLcHR/KVJlJ7tk
VtHXE1s0s8dQVsW0ldwazjWCa+1zGPE27tTdorLW3B3txWMZ0kY=
=kRCG
-----END PGP SIGNATURE-----