On 08/06/2012 10:21 AM, John Stultz wrote:
On 08/05/2012 09:55 AM, Sasha Levin wrote:On 07/30/2012 03:17 PM, Avi Kivity wrote:I've kept trying to narrow it down, and found out It's triggerable using adjtimex().Possible causes: - the APIC calibration in the guest failed, so it is programming too low values into the timer - it actually needs 1 us wakeups and then can't keep up (esp. as kvm interrupt injection is slowing it down)You can try to find out by changing arch/x86/kvm/lapic.c:start_lapic_timer() to impose a minimum wakeup of (say) 20 microseconds which will let the guest live long enough for you to ftrace it and see what kind of timers it is programming.At that point I've bisected it, and got the following commit (parties Cc'ed):commit 5baefd6d84163443215f4a99f6a20f054ef11236 Author: John Stultz <[email protected]> Date: Tue Jul 10 18:43:25 2012 -0400 hrtimer: Update hrtimer base offsets each hrtimer_interruptI've also confirmed that reverting the commit above on top of linux-next indeed fixes the issue.Hey Sasha,Thanks for the heads up. I don't have a clear sense of what could be wrong here yet, but if you see this with 3.6-rc but not 3.5, could you try the fix(1d17d17484d40f2d5b35c79518597a2b25296996) Ingo just made on tip/timers/urgent?
Reading over the thread here, the large timeouts also made me think that it could also be related to this pending fix:
http://lkml.org/lkml/2012/8/1/436
Its not a clear cut solution though, since the edge case that limits
usually results in a hang since we stop expiring timers all together.
Still working to reproduce what you're seeing, and will let you know as soon as I have any more info.
thanks -john -- 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/

