Re: timer_interrupt delayed messages 2.6.27-rc7

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

 



On Tue, Sep 30, 2008 at 11:59:53PM -0600, Grant Grundler wrote:
> Hey,
> I tested two 2.6.27-rc7 kernels on an a500.
> The first had CONFIG_HZ=250 and was getting the following messages:
> timer_interrupt(CPU 1): delayed! cycles 100001A37 rem 8C237  next/now 4A954C3C1C/4B954C5653
> timer_interrupt(CPU 0): delayed! cycles 100000E07 rem 8B607  next/now 4A95B8EAF5/4B95B8F8FC
> timer_interrupt(CPU 1): delayed! cycles 1000009CB rem 8B1CB  next/now 4B956525DC/4C95652FA7
> timer_interrupt(CPU 0): delayed! cycles 100000931 rem 8B131  next/now 4B95D1D4B5/4C95D1DDE6
> ...
> 
> Since 8B131+931 looks remarkably close to 550 Mhz/1000,

I'm looking at this again and wondering if I made a thinko.
(8B131-931) gives the same answer for each: 0x8A800 (567296)

> I decided to try a CONFIG_HZ=1000 kernel and now get the following:
> timer_interrupt(CPU 1): delayed! cycles 100001C74 rem 6004  next/now 2BFD187FEA/2CFD189C5E
> timer_interrupt(CPU 1): delayed! cycles 100000E8A rem 521A  next/now 2CFD20A0CA/2DFD20AF54
> timer_interrupt(CPU 1): delayed! cycles 100000A33 rem 4DC3  next/now 2DFD28C1AA/2EFD28CBDD
> timer_interrupt(CPU 1): delayed! cycles 100000C87 rem 5017  next/now 2EFD30E28A/2FFD30EF11

Same here:
    5017-C87=0x4390
    4DC3-A33=0x4390

> ...
> 
> Note that CPU0 no longer reports this error.
> I suspect we have two bugs in play here.
> 
> The first one might be we have some basic bug in how the itimer is
> getting programmed.  I suspect it's always off by 32-bits because IIRC
> we can only program the lower 32-bits of CR16. I suspect the comparison
> code gets the 32-bit rollover wrong. Is that enough clues for someone to
> spot this?

I've looked for this but don't see it. The next/now values above don't
support that theory since they are not within 0x8A800 (first example
at 250Hz) of 4G.

Secondly, at 1000Hz, I'm not seeing the relationship of 0x4390
to any plausible cycles per tick value (440-750Mhz). I should see
something between 0x6B6C0 (440Mhz) and 0xB71B0 (750Mhz).

I'm wondering if this a side effect of some other bug.

thanks,
grant


> The second might be 1000HZ (or 1024?) is still hardcoded in our source
> code someplace.  I can't otherwise explain the "rem" values dropped more
> than 4x while the "cycles" value is roughly the same (2^32 + about 0x1000).
> Also CPU0 stopped reporting this error. Initialization for CPU0 is different
> and those might be useful clues too.
> 
> thanks,
> grant
> --
> To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-parisc" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux SoC]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux