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

[Xen-users] how to configure cpuid in pvm ?


I got into troubles with the live migration of a Xen domU pvm running a
java application.

There are 2 host systems. One is a newer Xeon3450 system, the other one
is a 2-core PentiumD.
Both are running xenified kernel, xen is 4.0.1. If the java
application was initially started
when domU is located on weaker node, i.e. PentiumD, it can be
sucessfully migrated back and forth.
But if the application was first started when on newer Xeon node, jvm
will crash with internal invalid instruction
error while migrating to PentiumD.

That seems like java jit compiler is performing some
cpu-code-optimizations which are based
on cpu model/features determined upon jvm start. (Unfortunately there
does not seem to be any explicit option
to disable such optimization or select particular cpu model).

Given this conclusion, I started to tweak the cpuid settings in domU
config. I managed to get
a common subset of cpu features for both nodes. These are visible in
/proc/cpuinfo on both nodes
and seem to be correct.
However, jvm will still crash in course of migration, so it seems like
the cpuid does not really work
on low level.
Indeed, I tried the cpuid utility:
and it reports real cpu model/features independent what do I set in
cpuid config !

Whats wrong here ? Is cpuid not supposed to work in paravirt domain ?
Are cpuid registers not really emulated ?

best regards,


Xen-users mailing list



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