public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
From: George Anzinger <george@mvista.com>
To: Tim Schmielau <tim@physik3.uni-rostock.de>
Cc: Andrew Morton <akpm@osdl.org>,
	OGAWA Hirofumi <hirofumi@mail.parknet.co.jp>,
	albert@users.sourceforge.net, lkml <linux-kernel@vger.kernel.org>,
	voland@dmz.com.pl, nicolas.george@ens.fr,
	kaukasoi@elektroni.ee.tut.fi, johnstul@us.ibm.com,
	david+powerix@blue-labs.org
Subject: Re: boot time, process start time, and NOW time
Date: Mon, 16 Aug 2004 17:31:06 -0700	[thread overview]
Message-ID: <412151CA.4060902@mvista.com> (raw)
In-Reply-To: <Pine.LNX.4.53.0408170055180.14122@gockel.physik3.uni-rostock.de>

Tim Schmielau wrote:
> On Mon, 16 Aug 2004, Andrew Morton wrote:
> 
> 
>>OGAWA Hirofumi <hirofumi@mail.parknet.co.jp> wrote:
>>
>>>Albert Cahalan <albert@users.sf.net> writes:
>>>
>>>
>>>>Even with the 2.6.7 kernel, I'm still getting reports of process
>>>>start times wandering. Here is an example:
>>>>
>>>>   "About 12 hours since reboot to 2.6.7 there was already a
>>>>   difference of about 7 seconds between the real start time
>>>>   and the start time reported by ps. Now, 24 hours since reboot
>>>>   the difference is 10 seconds."
>>>>
>>>>The calculation used is:
>>>>
>>>>   now - uptime + time_from_boot_to_process_start
>>>
>>>Start-time and uptime is using different source. Looks like the
>>>jiffies was added bogus lost counts.
>>>
>>>quick hack. Does this change the behavior?
>>
>>Where did this all end up?  Complaints about wandering start times are
>>persistent, and it'd be nice to get some fix in place...
> 
> 
> 
> 
> The trouble seems to be due to the patch below, part of a larger cleanup
> (http://linus.bkbits.net:8080/linux-2.5/cset%403ef4851dGg0fxX58R9Zv8SIq9fzNmQ?nav=index.html|src/.|src/fs|src/fs/proc|related/fs/proc/proc_misc.c)
> by George.
> 
> Quoting from the changelog entry:
> 
> "Changes the uptime code to use the posix_clock_monotonic notion of 
> uptime instead of the jiffies.  This time will track NTP changes and so should 
> be better than your standard wristwatch (if your using ntp)."
> 
> George is absolutely right that it's more precise. However, it's also 
> inconsistent with the process start times which use plain uncorrected 
> jiffies. ps stumbles over this inconsistency.
> 
> Simple fix: revert the patch below.
> Complicated fix: correct process start times in fork.c (no patch provided, 
> too complicated for me to do).
> 
> George?

Hm...  That patch was for a reason...  It seems to me that doing anything short 
of putting "xtime" (or better, clock_gettime() :)) in at fork time is not going 
to fix anything.   As written the start_time in the task_struct is fixed.  If 
"now - uptime + time_from_boot_to_process_start" it is wandering, it must be the 
fault of "now - uptime".  Since this seems to be wandering, and we corrected 
uptime in the referenced patch, is it safe to assume that "now" is actually 
being computed from "jiffies" rather than a gettimeofday()?

Seems like that is where we should be changing things.


-- 
George Anzinger   george@mvista.com
High-res-timers:  http://sourceforge.net/projects/high-res-timers/
Preemption patch: http://www.kernel.org/pub/linux/kernel/people/rml


  parent reply	other threads:[~2004-08-17  0:31 UTC|newest]

Thread overview: 57+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2004-06-22 23:57 boot time, process start time, and NOW time Albert Cahalan
2004-06-28 17:56 ` OGAWA Hirofumi
2004-08-16 19:41   ` Andrew Morton
2004-08-16 21:49     ` john stultz
2004-08-16 23:08     ` Tim Schmielau
2004-08-16 23:56       ` Tim Schmielau
2004-08-17  0:21       ` john stultz
2004-08-17  0:37         ` George Anzinger
2004-08-17  0:49           ` john stultz
2004-08-17  0:31       ` George Anzinger [this message]
2004-08-16 22:32         ` Albert Cahalan
2004-08-17  1:26           ` George Anzinger
2004-08-16 23:08             ` Albert Cahalan
2004-08-17  1:54               ` James Courtier-Dutton
2004-08-17  2:03                 ` Lee Revell
2004-08-17 20:52                 ` George Anzinger
2004-08-17  6:56         ` Tim Schmielau
2004-08-17 20:07           ` john stultz
2004-08-17 20:13             ` [RFC] New timeofday implementation proposal john stultz
2004-08-17 20:58               ` [RFC] New timeofday code john stultz
2004-09-01 23:16               ` [RFC] New timeofday implementation proposal Christoph Lameter
2004-08-16 23:24     ` boot time, process start time, and NOW time Albert Cahalan
2004-08-17 19:00       ` john stultz
2004-08-17 17:41         ` Albert Cahalan
2004-08-17 20:58           ` john stultz
2004-08-17 20:25     ` [PATCH] " Tim Schmielau
2004-08-17 22:24       ` George Anzinger
2004-08-17 22:37         ` john stultz
2004-08-17 23:07           ` Tim Schmielau
2004-08-18  0:11             ` john stultz
2004-08-17 22:19               ` Albert Cahalan
2004-08-18  1:09                 ` john stultz
2004-08-17 22:45                   ` Albert Cahalan
2004-08-18  7:42                   ` Tim Schmielau
2004-08-19 19:15                     ` Petri Kaukasoina
2004-08-26 11:04                       ` Andrew Morton
2004-08-26 12:07                         ` Tim Schmielau
2004-08-30 23:00                           ` Tim Schmielau
2004-08-30 23:38                             ` john stultz
2004-08-31  0:37                               ` Albert Cahalan
2004-08-31  0:49                                 ` Tim Schmielau
2004-08-31  0:45                               ` Tim Schmielau
2004-08-31  1:23                                 ` john stultz
2004-08-31  1:34                             ` john stultz
2004-08-31  6:07                               ` Tim Schmielau
2004-08-31 19:27                                 ` George Anzinger
2004-08-31 20:56                                   ` john stultz
2004-08-31 21:10                                     ` David Ford
2004-09-02 20:39                                     ` George Anzinger
2004-09-01 19:14                                 ` OGAWA Hirofumi
2004-09-02 20:58                                   ` George Anzinger
2004-09-02 21:38                                     ` OGAWA Hirofumi
2004-09-03  0:59                                       ` George Anzinger
2004-09-03  3:35                                         ` OGAWA Hirofumi
2004-09-03  7:31                                           ` George Anzinger
2004-09-03  7:51                                             ` Tim Schmielau
2004-09-03  7:15                                       ` Tim Schmielau

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=412151CA.4060902@mvista.com \
    --to=george@mvista.com \
    --cc=akpm@osdl.org \
    --cc=albert@users.sourceforge.net \
    --cc=david+powerix@blue-labs.org \
    --cc=hirofumi@mail.parknet.co.jp \
    --cc=johnstul@us.ibm.com \
    --cc=kaukasoi@elektroni.ee.tut.fi \
    --cc=linux-kernel@vger.kernel.org \
    --cc=nicolas.george@ens.fr \
    --cc=tim@physik3.uni-rostock.de \
    --cc=voland@dmz.com.pl \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox