coredump: Use 64bit time for unix time of coredump
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> Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
This commit is contained in:
Родитель
0125f504ed
Коммит
03927c8acb
|
@ -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 */
|
||||
|
|
Загрузка…
Ссылка в новой задаче