lkml.org 
[lkml]   [2015]   [Jul]   [1]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
SubjectRe: [PATCH v3] timekeeping: always make sure wall_to_monotonic isn't positive
From
On Tue, Jun 23, 2015 at 3:38 AM, Wang YanQing <udknight@gmail.com> wrote:
> I meet two issues on an IMX6 development board without enable
> RTC device(so timekeeping_init will initialize the boot time
> and monotonic to 0).
>
> Issue 1:exportfs -a generate:
> "exportfs: /opt/nfs/arm does not support NFS export"
> Issue 2:cat /proc/stat:
> "btime 4294967236"
>
> Exact reproduction of the same issues on x86 after run below
> code:
> " int main(void)
> {
> struct timeval val;
> int ret;
>
> val.tv_sec = 0;
> val.tv_usec = 0;
> ret = settimeofday(&val, NULL);
> return 0;
> }
> "
> Two issues are different symptoms of same problem:
> The reason is positive wall_to_monotonic push boot time back to the time
> before Epoch, getboottime will return negative value.
>
> In symptom 1:
> negative boot time cause get_expiry overflow time_t when input expire
> time is 2147483647, then cache_flush always clear entries just added
> in ip_map_parse.
> In symptom 2:
> show_stat use "unsigned long" to print
> negative value return by getboottime.
>
> This patch fix the problem.
>
> Impact:
> You can't set the CLOCK_REALTIME time prior to (1970 + system uptime).
>
> Signed-off-by: Wang YanQing <udknight@gmail.com>

Ok, the patch looks alright. The commit message is still not super
readable, but I went ahead and re-worded much of it. I've got it
queued for 4.3, and will be doing some testing. When I sent my stack
out to Thomas/Ingo for -tip, please review the rewording to make sure
you agree with the changes.

thanks
-john


\
 
 \ /
  Last update: 2015-07-01 20:41    [W:0.037 / U:1.572 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site