[Top] [All Lists]

Re: CONFIG_PRINTK_TIME and initial value for jiffies?

To: Sergei Shtylyov <>
Subject: Re: CONFIG_PRINTK_TIME and initial value for jiffies?
From: Herbert Valerio Riedel <>
Date: Tue, 16 May 2006 08:03:19 +0200
Cc: Clem Taylor <>, Linux-MIPS <>
In-reply-to: <>
Organization: Free Software Foundation
Original-recipient: rfc822;
References: <> <> <>

On Tue, 2006-05-16 at 01:35 +0400, Sergei Shtylyov wrote:
> >> I just switched to from 2.6.14 on a Au1550. I enabled
> >> CONFIG_PRINTK_TIME, and for some reason jiffies doesn't start out near
> >> zero like it does on x86. The first printk() always seems to have a
> >> time of 4284667.296000.
> >> jiffies_64 and wall_jiffies gets initialized to INITIAL_JIFFIES, but
> >> I'm not sure where jiffies is initialized. INITIAL_JIFFIES is -300*HZ
> >> (with some weird casting)
>     Yes, the casting is weird. I somewat doubt that:
> #define INITIAL_JIFFIES ((unsigned long)(unsigned int) (-300*HZ))
> u64 jiffies_64 = INITIAL_JIFFIES;
> can do the trick of wrapping around 5 mins after boot on x86... :-/

jfyi, starting with an offset of -300 seconds is done on purpose, to
expose bugs in drivers which don't handle wrapping of the jiffies;

and the trick to get printk to start at offset 0 is either define a
arch-specific printk_clock() function (it's a weak symbol in
kernel/printk.c) or like more drivers to it, to provide a sched_clock()
(which is used by the default printk_clock() function) implementation
which starts at offset 0...


<Prev in Thread] Current Thread [Next in Thread>