• Arnd Bergmann's avatar
    fs/hpfs: extend gmt_to_local() conversion to 64-bit times · f08957d0
    Arnd Bergmann authored
    The VFS timestamps are all 64-bit now, the only missing piece for hpfs
    is the internal conversion function.  One interesting bit about hpfs is
    that it can already deal with moving the 136 year window of its
    timestamps to support a much wider range than other file systems with
    32-bit timestamps.  It also treats the timestamps as 'unsigned' on
    64-bit architectures (but signed on 32-bit, because time_t always around
    to negative numbers in 2038).
    
    Changing the conversion to use time64_t makes 32-bit architectures
    behave the same way as 64-bit.  For completeness, this also adds a
    clamp_t call for each conversion, so we don't wrap the timestamps but
    instead stay within the [0..U32_MAX] range of the on-disk timestamps.
    
    Link: http://lkml.kernel.org/r/20180718115017.742609-3-arnd@arndb.deSigned-off-by: default avatarArnd Bergmann <arnd@arndb.de>
    Cc: Mikulas Patocka <mikulas@artax.karlin.mff.cuni.cz>
    Cc: Al Viro <viro@zeniv.linux.org.uk>
    Cc: Thomas Gleixner <tglx@linutronix.de>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    f08957d0
hpfs_fn.h 13.1 KB