lkml.org 
[lkml]   [2001]   [Oct]   [31]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [Patch] Re: Nasty suprise with uptime
On Wed, 31 Oct 2001, Andreas Dilger wrote:

> What about the following. Since jiffies wraps are extremely rare, it
> should be enough to have something along the lines of the following
> in the uptime code only (or globally accessible for any code that
> needs to use a full 64-bit jiffies value):
>
> u64 get_jiffies64(void)
> {
> static unsigned long jiffies_hi = 0;
> static unsigned long jiffies_last = INITIAL_JIFFIES;
>
> /* probably need locking for this part */
> if (jiffies < jiffies_last) { /* We have a wrap */
> jiffies_hi++;
> jiffies_last = jiffies;
> }
>
> return (jiffies | ((u64)jiffies_hi) << LONG_SHIFT));
> }
>
> This means you need to call something that _checks_ the uptime
> (or needs the 64-bit jiffies value) at least once every 1.3 years.
> If you don't do it at least that often, you probably don't care
> about the uptime anyways.
>
> This only impacts anything that really needs a 64-bit jiffies count,
> and has zero impact everywhere else.
>

I initially thought of that too. My objection was that boxes with long
uptimes typically get forgotten in a corner until years later someone
checks uptime again.

However, I fully agree with your importance argument and believe this
proposal to be the best one.

Tim

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:12    [W:0.053 / U:5.172 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site