staging/lustre: partially use time64_t for capa expiry
authorArnd Bergmann <arnd@arndb.de>
Sun, 27 Sep 2015 20:45:47 +0000 (16:45 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Tue, 29 Sep 2015 02:06:19 +0000 (04:06 +0200)
Here, we actually have a problem in 2038 or at the latest in 2106 when
the lc_expiry variable on the wire protocol overflows, including on
64-bit architectures.

Now that the actual code was removed, only on-the wire structure
is left so we add in a y2038 warning to remind whoever gets to
implement it again about this problem.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/lustre/lustre/include/lustre/lustre_idl.h

index 057fa19186f05c4c4096c1ecf707f1e489247476..3ac1de352296d34bc357ba15aff81ac83a5046ef 100644 (file)
@@ -3478,6 +3478,7 @@ struct lustre_capa {
        __u32      lc_flags;       /** HMAC algorithm & flags */
        __u32      lc_keyid;       /** key# used for the capability */
        __u32      lc_timeout;     /** capa timeout value (sec) */
+/* FIXME: y2038 time_t overflow: */
        __u32      lc_expiry;      /** expiry time (sec) */
        __u8        lc_hmac[CAPA_HMAC_MAX_LEN];   /** HMAC */
 } __attribute__((packed));