On Fri, Dec 30, 2022 at 01:13:21PM -0800, Darrick J. Wong wrote: > Hi everyone, > > As I've mentioned several times throughout 2022, I would like to merge > the online fsck feature in time for the 2023 LTS kernel. The first big > step in this process is to merge all the pending bug fixes, validation > improvements, and general reorganization of the existing metadata > scrubbing functionality. > > This first deluge starts with the design document for the entirety of > the online fsck feature. The design doc should be familiar to most of > you, as it's been on the list for review for months already. It > outlines in brief the problems we're trying to solve, the use cases and > testing plan, and the fundamental data structures and algorithms > underlying the entire feature. > > After that come all the code changes to wrap up the metadata checking > part of the feature. The biggest piece here is the scrub drains that > allow scrub to quiesce deferred ops targeting AGs so that it can > cross-reference recordsets. Most of the rest is tweaking the btree code > so that we can do keyspace scans to look for conflicting records. > > For this review, I would like people to focus the following: > > - Are the major subsystems sufficiently documented that you could figure > out what the code does? > > - Do you see any problems that are severe enough to cause long term > support hassles? (e.g. bad API design, writing weird metadata to disk) > > - Can you spot mis-interactions between the subsystems? > > - What were my blind spots in devising this feature? > > - Are there missing pieces that you'd like to help build? > > - Can I just merge all of this? > > The one thing that is /not/ in scope for this review are requests for > more refactoring of existing subsystems. While there are usually valid > arguments for performing such cleanups, those are separate tasks to be > prioritized separately. I will get to them after merging online fsck. > > I've been running daily online scrubs of every computer I own for the > last five years, which has helped me iron out real problems in (limited > scope) production. All issues observed in that time have been corrected > in this submission. The 3 fstests patchsets of the [NYE DELUGE 1/4] look good to me. And I didn't find more critical issues after Darrick fixed that "group name missing" problem. By testing it a whole week, I decide to merge this 3 patchsets this weekend, then we can shift to later patchsets are waiting for review and merge. Reviewed-by: Zorro Lang <zlang@xxxxxxxxxx> Thanks, Zorro > > As a warning, the patches will likely take several days to trickle in. > All four patch deluges are based off kernel 6.2-rc1, xfsprogs 6.1, and > fstests 2022-12-25. > > Thank you all for your participation in the XFS community. Have a safe > New Years, and I'll see you all next year! > > --D >