summaryrefslogtreecommitdiff
tag namescrub-drain-intents_2022-10-14 (4d2ae030b36950cf940d34b30661a2032c8b7a4f)
tag date2022-10-14 14:18:16 -0700
tagged byDarrick J. Wong <djwong@kernel.org>
tagged objectcommit 86d3dbe6c6...
xfs: drain deferred work items when scrubbing
The design doc for XFS online fsck contains a long discussion of the eventual consistency models in use for XFS metadata. In that chapter, we note that it is possible for scrub to collide with a chain of deferred space metadata updates, and proposes a lightweight solution: The use of a pending-intents counter so that scrub can wait for the system to drain all chains. This patchset implements that scrub drain. The first patch implements the basic mechanism, and the subsequent patches reduce the runtime overhead by converting the implementation to use sloppy counters and introducing jump labels to avoid walking into scrub hooks when it isn't running. This last paradigm repeats elsewhere in this megaseries. Signed-off-by: Darrick J. Wong <djwong@kernel.org> -----BEGIN PGP SIGNATURE----- iQIzBAABCgAdFiEEUzaAxoMeQq6m2jMV+H93GTRKtOsFAmNJ0hgACgkQ+H93GTRK tOv2FA/9FUDa+ArPkGgbeEmSMAeyaOmTErmaXtjTPIR8C/4hCBkqzZSMCUglWdL9 BFae+jsXEbFhXIWs2atfyjce6PoXbtmYeAv9LvcjJoD62RF06glbPzf6cDf59Y2/ 2ZRSVcksXTFvzjxbUbAonmiVqdHG4Nirh710EzrKljVvUQuTlIOtKubNoCsZd2lX Fp8JIANDzx38ExWXDpnuBxIjq+xACNxghDS5qs2QvzYaY0tmKAkJIu4eW3AF/U/1 reJO4URRXSxDOCKX3TLjpIsLzuUjvdMEjrJ7/HDrpruAIwcw+Ay0brICD3YrpdXJ vAkafPCxK1Anh/mshQOJU4eFmwDR3GMAkazLZmti3tO14a37XK2gClzzM6J80sFQ Q8dj8DXoku42SA1eIyJnEitmdcIP0kPMGh+c7coGaF2MEXBc/NA+jzZrwL05f/x0 CiZDNC2TCmRGE2U1ckmJAV7HEFwn4tch4VcVZ+CXPXOMS/k57+3uqXaWFM/BIya/ oUsBBwRpFSBHMmPK2MV0YG8LQWXxY+9sabF/dTvY5BwESKd3L0f4VTHOD4D/guEM kPsObH0qoDD/XGlzrnUHz4uNCOw4dDlE10/Ghk46HJpdA/4FcTvkHfRaAI+XvTk7 jAdWGrpkYQq7ExSwo0bVgOB8ZWIyzx0RjpUXoutD2/gnoAxAelA= =2QuQ -----END PGP SIGNATURE-----