summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorArnd Bergmann <arnd@arndb.de>2016-06-30 18:49:01 +0300
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2016-08-20 19:10:54 +0300
commitce3ecef5c8f26d354e6b3cb5437614faa9ff6d34 (patch)
treec6d7daac03bf31ceb4b9b0c5fce8dc6dbaef86ed
parentcab58a50931fb4cc1633082ea09d67458c22e130 (diff)
downloadlinux-ce3ecef5c8f26d354e6b3cb5437614faa9ff6d34.tar.xz
jbd2: make journal y2038 safe
commit abcfb5d979892fc8b12574551fc907c05fe1b11b upstream. The jbd2 journal stores the commit time in 64-bit seconds and 32-bit nanoseconds, which avoids an overflow in 2038, but it gets the numbers from current_kernel_time(), which uses 'long' seconds on 32-bit architectures. This simply changes the code to call current_kernel_time64() so we use 64-bit seconds consistently. Signed-off-by: Arnd Bergmann <arnd@arndb.de> Signed-off-by: Theodore Ts'o <tytso@mit.edu> Reviewed-by: Jan Kara <jack@suse.cz> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
-rw-r--r--fs/jbd2/commit.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/fs/jbd2/commit.c b/fs/jbd2/commit.c
index 70078096117d..78313adb3c95 100644
--- a/fs/jbd2/commit.c
+++ b/fs/jbd2/commit.c
@@ -124,7 +124,7 @@ static int journal_submit_commit_record(journal_t *journal,
struct commit_header *tmp;
struct buffer_head *bh;
int ret;
- struct timespec now = current_kernel_time();
+ struct timespec64 now = current_kernel_time64();
*cbh = NULL;