On Tue 19-06-18 17:43:15, Arnd Bergmann wrote:
> Inode timestamps are now 64-bit wide even on 32-bit machines, and reiserfs
> interprets the 32-bit on-disk timestamps as unsigned when returning them
> to user space with statx(), so for consistency we should print them
> the same way in the emergency console logs.
>
> Signed-off-by: Arnd Bergmann <[email protected]>
...
> diff --git a/fs/reiserfs/item_ops.c b/fs/reiserfs/item_ops.c
> index e3c558d1b78c..d0ab3a763962 100644
> --- a/fs/reiserfs/item_ops.c
> +++ b/fs/reiserfs/item_ops.c
> @@ -33,11 +33,11 @@ static int sd_is_left_mergeable(struct reiserfs_key *key,
> unsigned long bsize)
> return 0;
> }
>
> -static char *print_time(time_t t)
> +static char *print_time(time64_t t)
> {
> static char timebuf[256];
>
> - sprintf(timebuf, "%ld", t);
> + sprintf(timebuf, "%lld", t);
> return timebuf;
> }
Well, seeing how print_time() is used, more appropriate prototype would be:
static char *print_time(u32 t)
and then print it as %u.
Honza
--
Jan Kara <[email protected]>
SUSE Labs, CR
_______________________________________________
Y2038 mailing list
[email protected]
https://lists.linaro.org/mailman/listinfo/y2038