From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752074AbdK0L56 (ORCPT ); Mon, 27 Nov 2017 06:57:58 -0500 Received: from mout.kundenserver.de ([212.227.17.13]:56283 "EHLO mout.kundenserver.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1751946AbdK0L54 (ORCPT ); Mon, 27 Nov 2017 06:57:56 -0500 From: Arnd Bergmann To: Eric Anholt Cc: y2038@lists.linaro.org, Stefan Wahren , linux-rpi-kernel@lists.infradead.org, Arnd Bergmann , linux-kernel@vger.kernel.org Subject: [PATCH] firmware: raspberrypi: print time using time64_t Date: Mon, 27 Nov 2017 12:57:14 +0100 Message-Id: <20171127115724.3083929-1-arnd@arndb.de> X-Mailer: git-send-email 2.9.0 X-Provags-ID: V03:K0:leFzz4fs/ETovnF6c7euBNEeYkQwZ4JR/UdCD70uUKlbiP2Rvu8 HRnDP0Yxj3KWY8y/FC1GMd+R7H3FwLW59yr5SZwyZAWpj8f97t3AUtBR0OS/1ZFCz8bM8bg 4yH+MpenxXal427X/ZsMU7u8nqUDVqx9oITKLdb5QgluPl43DVKENvKYp91c0eUdW1k+3r/ cRagOl+SHWNCj4HU3fraA== X-UI-Out-Filterresults: notjunk:1;V01:K0:2IsnEo2Lmhc=:XXZjGQ63wgCh4uzBlrpDcT t2smIjYzzJsAuNouPfYEPUmj4uq3EjMzVWuIpf1ozlpCH2kNa++e1S2o0+HKmJgniU+qKEfqm NO19VkU6S7HJ9oEIOxLb7e4kCC2EnNiY8WOgbTsXeTEXlce+YThJQv8UQTDbxRPtWeu9BoDBA QLhTz45xO1KNKWxRm5s6bTmi4mbmkEHylOZWFHpwYQve6CO/h0eA7Sk4CYwsqmwrrPFPWH6cq gY9ZX4iRpYRwK7HV8IUlDkIkyIz1KiashQoQAJ4a1skA/vS/Ye8CFwWWSv1WJZj0zAogERVB0 ATXmHsFbF/c7ziuW4x4peJgtlhuicn6ttuer9JMYSZcdEymYt8xRXmTX/DSa/2MWwa/BguQ5N MI5l+2t8dlgsVVvZk1aD+tiI61dvq6zMSYGpnMIew5Uj849TYjb9xnM6bOAawvkEi+tcrMs7k CJ6XZvabIVtmxQ4RW/CERQ2rI14s70tLPg7FwQyVw8K75eTTQ6oPTbQvQsshFII58n6WcvARq 8Ud5q+K0vFVUuynbhOARX/yqE6VHn607KztojtFf7JhxnW9GqHeg4kME53/VyVVly470oUg9S KXW3jMJsilPnLGQvJqu72/H24JbURZuXGigu9y3ELMZ3TsKKJnDze0bAWyo5QectsyMR66tXX zL57ZTpc6jbw5TctquyjohJs2OkefGpvVFf6ZUp8qkvHD2oJBQHTJiGR7F1+7Rv82Hyn6NcYe jWSgercZNHA/FbQr1tEyS2qXVirk4CnyqflEOA== Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org The firmware timestamp is an unsigned 32-bit value, but we copy it into a signed 32-bit variable, so we can theoretically get an overflow in the calculation when the timestamp is between 2038 and 2106. This changes the temporary variable to time64_t and changes the deprecated time_to_tm() over to time64_to_tm() accordingly. There is still an overflow in y2106, but that is a limitation of the firmware interface, not a kernel problem. Signed-off-by: Arnd Bergmann --- drivers/firmware/raspberrypi.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/drivers/firmware/raspberrypi.c b/drivers/firmware/raspberrypi.c index dd506cd3a5b8..6692888f04cf 100644 --- a/drivers/firmware/raspberrypi.c +++ b/drivers/firmware/raspberrypi.c @@ -174,7 +174,7 @@ rpi_firmware_print_firmware_revision(struct rpi_firmware *fw) if (ret == 0) { struct tm tm; - time_to_tm(packet, 0, &tm); + time64_to_tm(packet, 0, &tm); dev_info(fw->cl.dev, "Attached to firmware from %04ld-%02d-%02d %02d:%02d\n", -- 2.9.0