diff mbox

coredump: Use 64bit time for unix time of coredump

Message ID 11690898.L9iAzJUgJU@wuerfel (mailing list archive)
State New, archived
Headers show

Commit Message

Arnd Bergmann Nov. 25, 2015, 3:22 p.m. UTC
struct timeval on 32-bit systems will have its tv_sec
value overflow in year 2038 and beyond.
Use a 64 bit value to print time of the coredump in seconds.
ktime_get_real_seconds is chosen here for efficiency reasons.

Suggested by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Tina Ruchandani <ruchandani.tina@gmail.com>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
I've had this patch in my queue for a while, and would like for
someone to pick it up into mainline.

Andrew Morton seems to be the one who has handled most of the
coredump.c patches. Andrew, can you take this for 4.5?

My tree is part of linux-next, so I assume I have to drop it
before you can take it into -mm?

Alternatively, Al could take it for his vfs tree, or Thomas
or John for the timekeeping branch in tip.


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

Comments

Al Viro Nov. 25, 2015, 4:16 p.m. UTC | #1
On Wed, Nov 25, 2015 at 04:22:25PM +0100, Arnd Bergmann wrote:
> struct timeval on 32-bit systems will have its tv_sec
> value overflow in year 2038 and beyond.
> Use a 64 bit value to print time of the coredump in seconds.
> ktime_get_real_seconds is chosen here for efficiency reasons.
> 
> Suggested by: Arnd Bergmann <arnd@arndb.de>
> Signed-off-by: Tina Ruchandani <ruchandani.tina@gmail.com>
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
> I've had this patch in my queue for a while, and would like for
> someone to pick it up into mainline.

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

Patch

diff --git a/fs/coredump.c b/fs/coredump.c
index 1777331eee76..b3c153ca435d 100644
--- a/fs/coredump.c
+++ b/fs/coredump.c
@@ -32,6 +32,7 @@ 
 #include <linux/pipe_fs_i.h>
 #include <linux/oom.h>
 #include <linux/compat.h>
+#include <linux/timekeeping.h>
 
 #include <asm/uaccess.h>
 #include <asm/mmu_context.h>
@@ -232,9 +233,10 @@  static int format_corename(struct core_name *cn, struct coredump_params *cprm)
 				break;
 			/* UNIX time of coredump */
 			case 't': {
-				struct timeval tv;
-				do_gettimeofday(&tv);
-				err = cn_printf(cn, "%lu", tv.tv_sec);
+				time64_t time;
+
+				time = ktime_get_real_seconds();
+				err = cn_printf(cn, "%lld", time);
 				break;
 			}
 			/* hostname */