+_filesystem_timestamp_range() +{
- device=${1:-$TEST_DEV}
- case $FSTYP in
- ext4) #dumpe2fs
if [ $(dumpe2fs -h $device 2>/dev/null | grep "Inode size:" | cut -d: -f2) -gt 128 ]; then
echo "-2147483648 15032385535"
else
echo "-2147483648 2147483647"
fi
Do ext3 and ext2 follow the same config as ext4?
Those two only support the second case with 128 byte inodes, but the same check should work on all three.
I have an overview of the limits on https://kernelnewbies.org/y2038/vfs, though I'd probably check all of them again, as some of them turned out to be wrong. In particular, identifying whether the on-disk timestamps are meant to be signed or unsigned can be a matter of interpretation and there may be a specification that disagrees with the implementation.
Right now I've only added tests for a few filesystems. The plan is to add more filesystems later after we agree on the test.
-Deepa