lkml.org 
[lkml]   [2013]   [May]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] timer: Fix jiffies wrap behavior of round_jiffies*()
On Wed, 29 May 2013 17:13:49 -0700 Joe Perches <joe@perches.com> wrote:

> On Wed, 2013-05-29 at 16:38 -0700, Andrew Morton wrote:
> > On Wed, 29 May 2013 16:17:47 -0700 Joe Perches <joe@perches.com> wrote:
> >
> > > > We could perhaps have a checkpatch rule
> > > > which looks for comparisons against jiffes (and any other
> > > > time-measuring variables we can detect)
> > >
> > > other variables like?
> >
> > Grepping for time_after finds a bunch. There's no real pattern to it though.
>
> get_jiffies_64() should probably be added as
> another test too.
>
> Also, these might be wrong:
>
> arch/arm/kernel/smp_twd.c: while (get_jiffies_64() < waitjiffies)
> arch/arm/kernel/smp_twd.c: while (get_jiffies_64() < waitjiffies)
> fs/fuse/dir.c: else if (fuse_dentry_time(entry) < get_jiffies_64()) {
> fs/fuse/dir.c: if (fi->i_time < get_jiffies_64()) {
> fs/fuse/dir.c: if (fi->i_time < get_jiffies_64()) {
>

Yup. Normally a 64-bit jiffy will wrap around shortly after the heat
death of the universe, but

a) it's derived from jiffies, which we evilly cause to wrap after 5
minutes uptime and

b) it's derived from jiffies, which is 32-bit on 32-bit and hence
wraps every 49 days (HZ=1000).



\
 
 \ /
  Last update: 2013-05-30 07:41    [W:3.313 / U:1.300 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site