Kernel/Ext2FS: Add full support for large inodes #25456
Open
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
The extra data provided by large inodes has almost exclusively to do with timestamps, which means that you can now get nanosecond precision on your root file system, and the capability to support dates beyond 2038 or so in a standards-compliant way. This is also basically a pre-requisite for ext3/ext4, since the 128-byte inodes we've been using are more-or-less deprecated.
This PR also fixes up serialization of epoch offsets, so if you have a filesystem that has inodes with negative timestamps, then those should now be reported correctly.
Lastly, this also adds a CI step to validate filesystem consistency after running tests, since we shouldn't be seeing any filesystem corruption after all the recent work that's been put into
Ext2FS
.