Re: [PATCH] x86_64 add missing enter_idle() calls

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Andi,

On Mon, Oct 16, 2006 at 12:08:13PM +0200, Andi Kleen wrote:
> On Friday 06 October 2006 10:16, Stephane Eranian wrote:
> > Hi,
> > 
> > Unless I am mistaken, I think we are missing some calls to enter_idle()
> > in the x86_64 tree. The following patch adds a bunch of missing
> > enter_idle() callbacks for some of the "direct" interrupt handlers.
> > 
> > changelog:
> > 	- adds missing enter_idle() calls to most of the "direct" interrupt
> > 	  handlers.
> 
> HLT returns after an interrupt and then does enter_idle()

With the original code, the number of callbacks you see for IDLE_START and
IDLE_STOP is not too obvious.

On an idle system Opteron 250 with HZ=250, one would expect to see for a 10s duration:
	- for CPU0      : IDLE_START = IDLE_STOP = about 5000 calls
	- for other CPUs: IDLE_START = IDLE_STOP = about 2500  calls

With the original code, you get the following number of calls:

CPU0.IDLE_START = 44 (enter_idle)
CPU0.IDLE_STOP  = 5206 (exit_idle)

CPU1.IDLE_START = 27 (enter_idle)
CPU1.IDLE_STOP  = 2528 (exit_idle)

Now, of course, you may get "batched" interrupts where you do not return to idle
before you process the next interrupt. But the difference seems quite high here.

Do you have an explanation for this?

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

[Index of Archives]     [Kernel Newbies]     [Netfilter]     [Bugtraq]     [Photo]     [Stuff]     [Gimp]     [Yosemite News]     [MIPS Linux]     [ARM Linux]     [Linux Security]     [Linux RAID]     [Video 4 Linux]     [Linux for the blind]     [Linux Resources]
  Powered by Linux