create the boot filesystem with known-good options
What I'd like:
LWN recently covered filesystem forward-compatibility in Debian which related to an issue with e2fsprogs 1.47.0 turning the metadata_csum_seed option on by default, leading to boot failures since existing releases of GRUB cannot handle the option.
In the comments, "mb" suggests prefixing a list of known-good options with -O none to avoid unexpectedly introducing new filesystem features. Since GRUB only reads the /boot filesystem, that is the only place where the change would be needed.
The current list of features reported by tune2fs -l /dev/nvme0n1p3 is:
ext_attr resize_inode dir_index filetype extent 64bit flex_bg sparse_super large_file huge_file dir_nlink extra_isize metadata_csum
Any alternatives you've considered:
Another approach would be to exercise more direct control over the version of e2fsprogs and mkfs.ext4 used, or carrying a known-good /etc/mke2fs.conf with the current options enumerated. However, that would be more likely to freeze the software or the option set used for all created ext4 filesystems, when it's really just the /boot filesystem that is exposed to this failure mode.
Hey, I'd like to contribute to this issue
That would be great @rushikeshsuryawanshi! I've assigned the issue to you. :)
Hey @stmcginnis , Do i need to setup project on Baremetal for development ? As this is a boot related issue
I believe you should be able to exercise the same code path using a local VM or a cloud instance. Either metal or a virtual machine will still need to boot the instance using GRUB and read from the /boot filesystem.