linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH] jfs: use time64_t for otime
@ 2018-06-19 15:51 Arnd Bergmann
  2018-06-19 19:06 ` Dave Kleikamp
  0 siblings, 1 reply; 2+ messages in thread
From: Arnd Bergmann @ 2018-06-19 15:51 UTC (permalink / raw)
  To: Dave Kleikamp; +Cc: y2038, Arnd Bergmann, jfs-discussion, linux-kernel

The file creation time in the inode uses time_t which is defined differently
on 32-bit and 64-bit architectures and deprecated. The representation in
the inode uses an unsigned 32-bit number, but this gets wrapped around
after year 2038 when assigned to a time_t.

This changes the type to time64_t, so we can support the full range of
timestamps between 1970 and 2106 on 32-bit systems like we do on 64-bit
systems already, and matching what we do for the atime/ctime/mtime stamps
since the introduction of 64-bit timestamps in VFS.

Note: the otime stamp is not actually used anywhere at the moment in
the kernel, it is just set when writing a file, so none of this really
makes a difference unless we implement setting the btime field in the
getattr() callback.

Signed-off-by: Arnd Bergmann <arnd@arndb.de>
---
 fs/jfs/jfs_incore.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/fs/jfs/jfs_incore.h b/fs/jfs/jfs_incore.h
index 1f26d1910409..d5c46f86b2ef 100644
--- a/fs/jfs/jfs_incore.h
+++ b/fs/jfs/jfs_incore.h
@@ -43,7 +43,7 @@ struct jfs_inode_info {
 	pxd_t	ixpxd;		/* inode extent descriptor	*/
 	dxd_t	acl;		/* dxd describing acl	*/
 	dxd_t	ea;		/* dxd describing ea	*/
-	time_t	otime;		/* time created	*/
+	time64_t otime;		/* time created	*/
 	uint	next_index;	/* next available directory entry index */
 	int	acltype;	/* Type of ACL	*/
 	short	btorder;	/* access order	*/
-- 
2.9.0


^ permalink raw reply related	[flat|nested] 2+ messages in thread

* Re: [PATCH] jfs: use time64_t for otime
  2018-06-19 15:51 [PATCH] jfs: use time64_t for otime Arnd Bergmann
@ 2018-06-19 19:06 ` Dave Kleikamp
  0 siblings, 0 replies; 2+ messages in thread
From: Dave Kleikamp @ 2018-06-19 19:06 UTC (permalink / raw)
  To: Arnd Bergmann; +Cc: y2038, jfs-discussion, linux-kernel

On 06/19/2018 10:51 AM, Arnd Bergmann wrote:
> The file creation time in the inode uses time_t which is defined differently
> on 32-bit and 64-bit architectures and deprecated. The representation in
> the inode uses an unsigned 32-bit number, but this gets wrapped around
> after year 2038 when assigned to a time_t.
> 
> This changes the type to time64_t, so we can support the full range of
> timestamps between 1970 and 2106 on 32-bit systems like we do on 64-bit
> systems already, and matching what we do for the atime/ctime/mtime stamps
> since the introduction of 64-bit timestamps in VFS.
> 
> Note: the otime stamp is not actually used anywhere at the moment in
> the kernel, it is just set when writing a file, so none of this really
> makes a difference unless we implement setting the btime field in the
> getattr() callback.

This looks good to me. I'll push it to linux-next and target the next
merge window.

Thanks,
Shaggy

> 
> Signed-off-by: Arnd Bergmann <arnd@arndb.de>
> ---
>  fs/jfs/jfs_incore.h | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/fs/jfs/jfs_incore.h b/fs/jfs/jfs_incore.h
> index 1f26d1910409..d5c46f86b2ef 100644
> --- a/fs/jfs/jfs_incore.h
> +++ b/fs/jfs/jfs_incore.h
> @@ -43,7 +43,7 @@ struct jfs_inode_info {
>  	pxd_t	ixpxd;		/* inode extent descriptor	*/
>  	dxd_t	acl;		/* dxd describing acl	*/
>  	dxd_t	ea;		/* dxd describing ea	*/
> -	time_t	otime;		/* time created	*/
> +	time64_t otime;		/* time created	*/
>  	uint	next_index;	/* next available directory entry index */
>  	int	acltype;	/* Type of ACL	*/
>  	short	btorder;	/* access order	*/
> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2018-06-19 19:07 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-06-19 15:51 [PATCH] jfs: use time64_t for otime Arnd Bergmann
2018-06-19 19:06 ` Dave Kleikamp

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).