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

Re: [Xen-devel] domU jiffies not incrementing - timer issue? - Kernel 3.18.10 on Xen 4.5.0



On 31 March 2015 at 17:31, Mark Chambers <mark@xxxxxxxxxxxxxxx> wrote:

On 31 March 2015 at 11:56, Mark Chambers <mark@xxxxxxxxxxxxxxx> wrote:

It's nested under Hyper-V in the same manner as the problematic install. I was deliberately trying to replicate the issue, but the problem doesn't manifest.

Mark


Hi,

I've got it booting.

The machine without boot problems reports the use of emulated TSC:

(XEN) TSC not marked as either constant or reliable, warp=575 (count=2)
(XEN) dom109: mode=0,ofs=0x417376aa9c8c,khz=2633032,inc=1,vtsc count: 3576850 kernel, 9534 user

The machine with problems reports no domains having emulated TSC:

(XEN) TSC has constant rate, deep Cstates possible, so not reliable, warp=0 (count=3)
(XEN) dom23: mode=0,ofs=0x41dc316839ac,khz=2208968,inc=1
(XEN) No domains have emulated TSC

I have nothing specified in the xl config for tsc_mode. If I set tsc_mode='native'Â
and restart the DomU it boots without any problems.

If I explicitly specify any of the other tsc_mode it gets stuck with jiffies not
incrementing as before.

Mark




Hi all,Â

As Xen is reporting that "TSC has constant rate, deep Cstates possible, so not
reliable" it would seem risky to use native mode on the domU and I would prefer
to use emulated mode.

I added debug code to xen to help understand why jiffies increment correctly in
a DomU on one system but not at all on another system with an identical software
setup.

I don't understand the mechanism for updating jiffies in a Linux PV under Xen
but I have been looking at the x86 time and trap code inside Xen and have gained
a little insight.

System 1 and system 2 have identical software configurations. Both are running
windows 2012 RC2 hyper-V, running a VM which contains Xen 4.5.0 running a linux
3.18.10 dom0 running a PV domU. The biggest difference are their CPUs.

System 1 has a AMD Athlon(tm) 7750 Dual-Core Processor
System 2 has a Intel(R) Xeon(R) CPU E5520Â

From what I can deduce when using emulated TSC xen should receive lots of RDTSC
traps (opcode 0x31). The system that isn't working doesn't receive any RDTSC
traps. I suspect this may be a bug in Xen or the PV code in the linux kernel.

i.e:

System 1 tsc_mode='always_emulate' Â- xen receives RDTSC traps
System 1 tsc_mode='native' Â Â Â Â Â- xen doesn't receive RDTSC traps

System 2 tsc_mode='always_emulate' - Âxen doesn't receive RDTSC traps and
                   DomU's jiffies do not increment.
System 2 tsc_mode='native' Â Â Â Â - Âworks, xen doesn't receive RDTSC traps

I don't know if this is useful but the tsc lines from cpuid on system 1 report:

   RDTSCP                Â= false
   TscInvariant          = false
   MSR based TSC rate control  Â= false

while on system 2:

   IA32_TSC_ADJUST MSR supported      Â= false
   RDTSCP                 = false
   TscInvariant          = false


I'm trying to understand how the jiffies are updated in a PV DomU when the TSC
is emulated.Â

If anyone can point me in the right direction it'd be much appreciated.

Thanks for your time,Â

Mark



Â
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel

 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.