AMD-Intel guest migration and CPUs without NX
I have an older Intel CPU which doesn't support NX (/proc/cpuinfo - below). Is it safe to migrate guests running on newer CPUs to this older CPU? I made some simple tests and migration works, but I'm not sure if the guests will be stable after such migration.
I'm also a bit confused a bit over what the documentation says:
According to http://www.linux-kvm.org/page/Migration:
There are some older Intel processors which don't support NX (or XD), which may cause problems in a cluster which includes NX-supporting hosts. We may add a feature to hide NX if this proves to be a problem in actual deployments.
So the above says I may have some problems.
On the other hand, FAQ below seems to indicate that migration on 64 bit hosts should be fine (even when they don't support NX?), only 32 bit hosts may have problems:
http://www.linux-kvm.org/page/FAQ
Yes. There may be issues on 32-bit Intel hosts which don't support NX (or XD), but for 64-bit hosts back and forth migration should work well. Migration of 32-bit guests should work between 32-bit hosts and 64-bit hosts.
processor : 1vendor_id : GenuineIntel
cpu family : 6
model : 15
model name : Intel(R) Xeon(R) CPU 3050 @ 2.13GHz
stepping : 6
cpu MHz : 2133.410
cache size : 2048 KB
physical id : 0
siblings : 2
core id : 1
cpu cores : 2
fpu : yesfpu_exception : yes
cpuid level : 10
wp : yes
flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall lm constant_tsc arch_perfmon pebs bts rep_good pni monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr lahf_lm
bogomips : 4266.87
clflush size : 64cache_alignment : 64
address sizes : 36 bits physical, 48 bits virtual
power management:
Signature · 2 lines
Tomasz Chmielewski http://wpkg.org
Quoted 7 lines · Tomasz Chmielewski
I have an older Intel CPU which doesn't support NX (
/proc/cpuinfo- below). Is it safe to migrate guests running on newer CPUs to this older CPU? I made some simple tests and migration works, but I'm not sure if the guests will be stable after such migration.I'm also a bit confused a bit over what the documentation says:
According to http://www.linux-kvm.org/page/Migration:
Quoted 7 lines
There are some older Intel processors which don't support NX (or XD), which may cause problems in a cluster which includes NX-supporting hosts. We may add a feature to hide NX if this proves to be a problem in actual deployments.
So the above says I may have some problems.
Right, it's not safe in general. It may work if the guest doesn't use NX. It may also work if the guest does not rely on NX working properly.
Quoted 9 lines
On the other hand, FAQ below seems to indicate that migration on 64 bit hosts should be fine (even when they don't support NX?), only 32 bit hosts may have problems:
http://www.linux-kvm.org/page/FAQ
Yes. There may be issues on 32-bit Intel hosts which don't support NX (or XD), but for 64-bit hosts back and forth migration should work well. Migration of 32-bit guests should work between 32-bit hosts and 64-bit hosts.
Looks like that paragraph assumes that all 64-bit hosts have NX. Your /proc/cpuinfo proves otherwise.
Signature · 1 line
Do not meddle in the internals of kernels, for they are subtle and quick to panic.
Quoted 3 lines · Avi Kivity
Quoted 1 line
So the above says I may have some problems.
Right, it's not safe in general. It may work if the guest doesn't use NX. It may also work if the guest does not rely on NX working properly.
Although I think my guests don't use it, you never know. Is it possible to disable NX for chosen guests?
Quoted 10 lines
Quoted 8 lines
On the other hand, FAQ below seems to indicate that migration on 64 bit hosts should be fine (even when they don't support NX?), only 32 bit hosts may have problems:
http://www.linux-kvm.org/page/FAQ
Yes. There may be issues on 32-bit Intel hosts which don't support NX (or XD), but for 64-bit hosts back and forth migration should work well. Migration of 32-bit guests should work between 32-bit hosts and 64-bit hosts.
Looks like that paragraph assumes that all 64-bit hosts have NX. Your
/proc/cpuinfoproves otherwise.
Signature · 2 lines
Tomasz Chmielewski http://wpkg.org
Quoted 2 lines · Tomasz Chmielewski
Although I think my guests don't use it, you never know. Is it possible to disable NX for chosen guests?
-cpu qemu64,-nx
Signature · 1 line
Do not meddle in the internals of kernels, for they are subtle and quick to panic.
Quoted 5 lines · Avi Kivity
Quoted 2 lines · Tomasz Chmielewski
Although I think my guests don't use it, you never know. Is it possible to disable NX for chosen guests?
-cpu qemu64,-nx
Thanks.
I updated the FAQ and migration pages to contain this information.
Signature · 2 lines
Tomasz Chmielewski http://wpkg.org