Re: 1.6ms jitter in rtc_wakeup (Re: 2.6.14-rc4-rt1)

From: Petr Vandrovec
Date: Wed Oct 19 2005 - 11:04:25 EST


Esben Nielsen wrote:
On Fri, 14 Oct 2005, Esben Nielsen wrote:
I set up rtc_wakeup and got a jitter up 1.6ms!
It came when I cd'en into a nfs-mount and typed ls.

ls-11239 0Dn.. 4us : profile_hit (__schedule)
ls-11239 0Dn.1 4us : sched_clock (__schedule)
ls-11239 0Dn.1 5us : check_tsc_unstable (sched_clock)
ls-11239 0Dn.1 5us : tsc_read_c3_time (sched_clock)
IRQ 8-775 0D..2 6us : __switch_to (__schedule)
IRQ 8-775 0D..2 7us!: __schedule <ls-11239> (75 0)
IRQ 8-775 0...1 1594us : trace_stop_sched_switched (__schedule)
IRQ 8-775 0D..2 1594us : trace_stop_sched_switched <IRQ 8-775> (0 0)
IRQ 8-775 0D..2 1595us : trace_stop_sched_switched (__schedule)

ouch! This very much looks like a hardware induced latency, because the codepath from those two __schedule points is extremely short and there is no loop there. Have you tested this particular box before too? If not, can you reproduce this latency with older versions of -rt too on the same box, or is this completely new?

I have been testing on this box before but never with such long latencies
before.


I could not reproduce it on linux-2.6.14-rc3-rt10. The maximum meassured
rtc_wakeup is 146us with the same config options. Running linux-2.6.14-rc4-rt1 with ethernet disabled gave a maximum latency
of 1468us while building the kernel:

Hello,
I've just wrote to Randy that I'm seeing same on non-RT kernel when system
uses HPET. It makes it unusable for >512Hz, as when 1kHz timer is requested
we miss one tick and HPET interrupts stop for 5 minutes (32bit * 69.8ns).
Delay happens sometime after HPET programming - when frequency like 16kHz
is programmed, first ~6 interrupts arrive correctly, but 7th is delayed by
1 millisecond or so when compared with time on which it should arrive.

I've found it on VIA board, so I just assumed that VIA's hardware is
strange and went back to disabling HPET.

Maybe I should try -rt kernel sometime, but as I need working RTC interrupts
on that box for daily work, it is not simple to experiment with nohpet/hpet
options.
Petr

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