linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Martin Schwidefsky <schwidefsky@de.ibm.com>
To: Jan Engelhardt <jengelh@medozas.de>
Cc: Michael Abbott <michael@araneidae.co.uk>,
	Linux Kernel Mailing List <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH] Re: /proc/uptime idle counter remains at 0
Date: Mon, 11 May 2009 10:10:36 +0200	[thread overview]
Message-ID: <20090511101036.5bcb4245@skybase> (raw)
In-Reply-To: <alpine.LSU.2.00.0905110938210.667@fbirervta.pbzchgretzou.qr>

On Mon, 11 May 2009 09:42:03 +0200 (CEST)
Jan Engelhardt <jengelh@medozas.de> wrote:

> 
> On Monday 2009-05-11 09:35, Martin Schwidefsky wrote:
> >> I have to confess I don't really understand the logic of what's going on 
> >> here -- in particular, what does the idle process do other than account 
> >> for time when the processor has nothing useful to do?  It does seem to me 
> >> now that the .utime and .stime fields are now less than useful -- maybe 
> >> they can be deleted now?
> >
> >The idle task does not just sleep, it will do "real" work, e.g. softirq
> >handling for interrupts / network traffic.
> 
> With an RT kernel, SIRQ and such are separate tasks. That should also
> be play a role while 0 is displayed.

With an RT kernel there still is a tiny amount of system work in idle,
that is the instruction executed to switch to the idle process, go to
sleep, wake up again and switch back to another process.

> >> I've always assumed that the second field of /proc/uptime was a simple 
> >> measure of time not spent doing real work, in other words a crude measure 
> >> of spare CPU resources.  My instrument basically uses the the two fields 
> >> of this file to compute a measure of CPU loading so it can raise an alert 
> >> if the CPU doesn't have enough spare (idle) capacity.
> >
> >But it wasn't.. the old style stime of idle is a mixture of true idle
> >time and some system time.
> 
> Then I would say let's show the idle time only (but still inculde
> the idle time when the CPU is halted).

That is hard to do. I've implemented this for s390 where the idle time
really is the time spent waiting. To improve x86 with its tick based
accounting you need to find out if the timer interrupt arrived while
the cpu has been waiting, e.g. check the instruction pointed to by eip
for "hlt".

-- 
blue skies,
   Martin.

"Reality continues to ruin my life." - Calvin.


  reply	other threads:[~2009-05-11  8:10 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-05-09  8:05 /proc/uptime idle counter remains at 0 Jan Engelhardt
2009-05-10 17:12 ` Martin Schwidefsky
2009-05-11  0:46   ` Jan Engelhardt
2009-05-11  6:23     ` [PATCH] " Michael Abbott
2009-05-11  7:35       ` Martin Schwidefsky
2009-05-11  7:42         ` Jan Engelhardt
2009-05-11  8:10           ` Martin Schwidefsky [this message]
2009-05-11  9:07       ` Michael Abbott
2009-05-11  7:23     ` Martin Schwidefsky
2009-08-14 12:18 ` [PATCH] " Michael Abbott
2009-08-17  5:25   ` Amerigo Wang
2009-08-17  6:12     ` Michael Abbott
2009-08-17  6:23       ` Amerigo Wang
2009-08-17  6:58         ` Michael Abbott
2009-08-17  8:23           ` Amerigo Wang
2009-09-09  5:58   ` Andrew Morton
2009-09-09  8:02     ` Martin Schwidefsky
2009-09-10 13:02     ` Johan van Baarlen
2009-09-10 15:37       ` Martin Schwidefsky
2009-09-10 16:27         ` Michael Abbott
  -- strict thread matches above, loose matches on Subject: below --
2009-05-18 13:23 Michael Abbott
2009-05-18 14:00 ` Martin Schwidefsky
2009-05-25 10:28 ` Martin Schwidefsky
2009-07-06 15:48   ` Michael Abbott
2009-07-06 15:56     ` Jan Engelhardt
2009-07-06 16:09       ` Michael Abbott

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=20090511101036.5bcb4245@skybase \
    --to=schwidefsky@de.ibm.com \
    --cc=jengelh@medozas.de \
    --cc=linux-kernel@vger.kernel.org \
    --cc=michael@araneidae.co.uk \
    /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;
as well as URLs for NNTP newsgroup(s).