On Thursday 08 October 2009, Arjan van de Ven wrote: > From: Arjan van de Ven <arjan@xxxxxxxxxxxxxxx> > Date: Thu, 24 Sep 2009 13:24:16 +0200 > Subject: [PATCH] x86, timers: check for pending timers after (device) > interrupts > > Now that range timers and deferred timers are common, I found a > problem with these using the "perf timechart" tool. > > It turns out that on x86, these two 'opportunistic' timers only > get checked when another "real" timer happens. > These opportunistic timers have the objective to save power by > hitchhiking on other wakeups, as to avoid CPU wakeups by themselves > as much as possible. This patch makes quite a difference for me. iwlagn and phy0 now consistently show at ~10 ms or lower. I do still get occasional high latencies, but those are for things like "[rpc_wait_bit_killable]" or "Writing a page to disk", where I guess you'd expect them. Those high latencies are mostly only listed for "Global" and don't translate to individual processes. On Thursday 08 October 2009, Arjan van de Ven wrote: > On Thu, 08 Oct 2009 13:24:22 +0200 Mike Galbraith <efault@xxxxxx> wrote: > > Latencytop was accounting uninterruptible and interruptible sleep > > time up to 5ms, which is not the latency the user is looking for. > > it is for everything but the scheduler latency! > > latencytop wants to show where you're waiting for disk, etc etc. > that's not "time on runqueue". The ~10 ms I still get for iwlagn and phy0 (and sometimes higher (~30 ms) for others like Xorg and artsd) is still "Scheduler: waiting for cpu'. If it is actually due to (un)interuptable sleep, isn't that a misleading label? I directly associated that with scheduler latency. Or are those that are left now real scheduler latencies? The values are now low enough that they don't indicate a problem. Thanks, FJP P.S. I may be seeing another issue in the latencytop GUI. Sometimes I see "fsync() on a file (type 'F' for details)". But typing 'F' only gets me a search for a target starting with "F", no details. -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html