Messages in this thread | | | Date | Wed, 30 Sep 2015 09:26:01 +0200 (CEST) | From | Thomas Gleixner <> | Subject | Re: [PATCH 5/5] net: sfc: avoid using timespec |
| |
On Mon, 28 Sep 2015, Arnd Bergmann wrote:
> The sfc driver internally uses a time format based on 32-bit (unsigned) > seconds and 32-bit nanoseconds. This means it will overflow in 2106, > but the value we pass into it is a signed 32-bit tv_sec that already > overflows in 2038 to a negative value. > > This patch changes the logic to use the lower 32 bits of the timespec64 > tv_sec in efx_ptp_ns_to_s_ns, which will have the correct value beyond the overflow. > While this does not change any of the register values, it lets us > keep using the driver after we deprecate the use of the timespec type > in the kernel. > > In the efx_ptp_process_times function, the change to use timespec64 > is similar, in that the tv_sec portion is ignored anyway and we only > care about the nanosecond portion that remains unchanged. > > Signed-off-by: Arnd Bergmann <arnd@arndb.de>
Reviewed-by: Thomas Gleixner <tglx@linutronix.de>
| |