Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > linux.kernel > #1425233 > unrolled thread

[PATCH] jbd2: make journal y2038 safe

Started byArnd Bergmann <arnd@arndb.de>
First post2016-06-17 17:40 +0200
Last post2016-06-19 18:00 +0200
Articles 2 — 2 participants

Back to article view | Back to linux.kernel


Contents

  [PATCH] jbd2: make journal y2038 safe Arnd Bergmann <arnd@arndb.de> - 2016-06-17 17:40 +0200
    Re: [PATCH] jbd2: make journal y2038 safe Jan Kara <jack@suse.cz> - 2016-06-19 18:00 +0200

#1425233 — [PATCH] jbd2: make journal y2038 safe

FromArnd Bergmann <arnd@arndb.de>
Date2016-06-17 17:40 +0200
Subject[PATCH] jbd2: make journal y2038 safe
Message-ID<rL42e-8iY-21@gated-at.bofh.it>
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>
---
 fs/jbd2/commit.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/jbd2/commit.c b/fs/jbd2/commit.c
index 8f7d1339c973..5bb565f9989c 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;
 
-- 
2.9.0

[toc] | [next] | [standalone]


#1425990

FromJan Kara <jack@suse.cz>
Date2016-06-19 18:00 +0200
Message-ID<rLNiF-4gr-1@gated-at.bofh.it>
In reply to#1425233
On Fri 17-06-16 17:39:00, Arnd Bergmann wrote:
> 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>

The patch looks good. You can add:

Reviewed-by: Jan Kara <jack@suse.cz>

								Honza

> ---
>  fs/jbd2/commit.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/jbd2/commit.c b/fs/jbd2/commit.c
> index 8f7d1339c973..5bb565f9989c 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;
>  
> -- 
> 2.9.0
> 
-- 
Jan Kara <jack@suse.com>
SUSE Labs, CR

[toc] | [prev] | [standalone]


Back to top | Article view | linux.kernel


csiph-web