Hello. This is the V2 of the series to enable bigtime feature for XFS driver.
This is exactly the same patches as before, just the patches's subjects had been changed according to Javier'r review on the original version. By adding the proper prefixes to both patches. This series enable grub's xfs driver to recognize new xfs's feature bigtime, which aims to fix the y2038 timestamps problems. The first patch in the series is the xfs driver implementation to read the new timestamp format from disk (or the old one if that's the case) and convert it to epoch seconds before passing it back to grub's core. It's self contained and the result, it larger than INT_MAX, is implicitly truncated when passing it back to grub core, so it will overflow the timestamps anyway. The second patch (and this is more like a RFC since I am very new to grub's code), aims to update grub itself to support 64bit timestamps by converting its filesystems drivers to pass a 64bit value back to grub's core and convert grub_unixtime2datetime() to support 64bit timestamp handling. I tested these patches on both x86_64 and x86_32 and I tried to cover most corner cases I could remember, in my testing they worked as expected, but again, I am new to grub code, so I might have missed some other corner cases. Carlos Maiolino (2): fs/xfs: Add bigtime support for xfs driver fs: Use 64bit type for filesystem timestamp grub-core/fs/affs.c | 2 +- grub-core/fs/ext2.c | 2 +- grub-core/fs/fat.c | 4 +-- grub-core/fs/hfs.c | 2 +- grub-core/fs/hfsplus.c | 2 +- grub-core/fs/iso9660.c | 6 ++-- grub-core/fs/nilfs2.c | 2 +- grub-core/fs/squash4.c | 2 +- grub-core/fs/ufs.c | 2 +- grub-core/fs/xfs.c | 69 ++++++++++++++++++++++++++++-------- grub-core/fs/zfs/zfs.c | 2 +- grub-core/lib/datetime.c | 15 ++++++-- grub-core/net/bootp.c | 2 +- grub-core/normal/misc.c | 2 +- grub-core/tests/sleep_test.c | 4 +-- include/grub/datetime.h | 4 +-- include/grub/fs.h | 4 +-- 17 files changed, 87 insertions(+), 39 deletions(-) -- 2.30.2 _______________________________________________ Grub-devel mailing list Grub-devel@gnu.org https://lists.gnu.org/mailman/listinfo/grub-devel