Re: [Y2038] [PATCH] vfs: Add support to check max and min inode times

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Friday 04 March 2016 00:31:09 Steve French wrote:
> >> i.e. 32 bit systems should default to 32 bit time limits until the
> >> filesystem developers come along and verify that conversion from
> >> their on-disk format to 64 bit time works correctly. Then they set
> >> their real limits which may (or may not) be >y2038 compatible, and
> >> this means that filesystems that have not been converted to >y2038
> >> compatible do not need any modifications to behave correctly on 32
> >> bit systems...
> >
> > We can set the limits in the superblock if you like, but I would
> > not do it by changing the constants here:
> >
> > Most file systems have arbitrary other maximum dates that they
> > need to set (on 64-bit systems), e.g. 2028 (iso9660), 2040 (hfsplus),
> > 2106 (ceph), 2107 (fat, cifs), 2262 (logfs), 2514 (ext4).
> 
> I am puzzled why 2107 would be the maximum date for cifs.  My
> calculation comes to a
> maximum date of approximately the year 60,000AD for 64 bit DCE time
> (cifs.ko gets DCE time back in all time fields when using CIFS, SMB2 or SMB3
> except for the oldest dialects of CIFS).   DCE time is
> 100 nanoseconds since 1601 - see the definition of FILETIME in section 2.3.3
> of https://msdn.microsoft.com/en-us/library/cc230324.aspx).  And shouldn't
> this be the same for NTFS as they use a similar DCE time internally?
> 

The value I was looking up in my table at http://kernelnewbies.org/y2038
indeed referred to the ancient SMB timestamps that use a 7-bit year
number starting in 1980, just as fat has.

The year I have listed in the table for modern cifs and ntfs is 30328,
which assumes that it's a signed 64-bit multiple of 100 nanoseconds, and
that's what I see in cifs_NTtimeToUnix() as well. The documentation
you point to describes it as unsigned, which matches your 60,000AD
date, so before we add the limits, we should try to clarify which one
was intended.

	Arnd
--
To unsubscribe from this list: send the line "unsubscribe linux-fsdevel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html



[Index of Archives]     [Linux Ext4 Filesystem]     [Union Filesystem]     [Filesystem Testing]     [Ceph Users]     [Ecryptfs]     [AutoFS]     [Kernel Newbies]     [Share Photos]     [Security]     [Netfilter]     [Bugtraq]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux Cachefs]     [Reiser Filesystem]     [Linux RAID]     [Samba]     [Device Mapper]     [CEPH Development]
  Powered by Linux