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

Re: [Xen-devel] AMD extended migration CPU masks: why only on CPU 0?



Tim,

The (extended) CPUID mask MSRs are associated with each core. They need to be updated on each core if migration happens across CPUs. Changset 18402 does update the MSRs for each core. But printk() only happens on core 0. If you move printk() statements below wrmsr(), you will see it been called on each core.

It is hard to justify which way is better. I attach the patch anyway, in case Keir or you want it for xen-unstable.

Signed-off-by: Wei Huang <wei.huang2@xxxxxxx>

Best,
-Wei




Tim Deegan wrote:
Hi Travis,
In c/s 18402, the CPUID masks are only set once, on CPU 0.  Can you
explain why this doesn't have to happen on every core, or at least every
socket? The white paper doesn't discuss it.
Cheers,

Tim.


diff -r 83a6621b91bf xen/arch/x86/cpu/amd.c
--- a/xen/arch/x86/cpu/amd.c    Wed Feb 10 09:20:56 2010 +0000
+++ b/xen/arch/x86/cpu/amd.c    Fri Feb 19 14:22:04 2010 -0600
@@ -131,10 +131,6 @@
        }
 
        status = set_mask;
-       printk("Writing CPUID feature mask ECX:EDX -> %08Xh:%08Xh\n", 
-              feat_ecx, feat_edx);
-       printk("Writing CPUID extended feature mask ECX:EDX -> %08Xh:%08Xh\n", 
-              extfeat_ecx, extfeat_edx);
 
  setmask:
        /* FIXME check if processor supports CPUID masking */
@@ -146,6 +142,10 @@
                wrmsr_amd(MSR_K8_FEATURE_MASK, feat_edx, feat_ecx);
                wrmsr_amd(MSR_K8_EXT_FEATURE_MASK, extfeat_edx, extfeat_ecx);
        }
+        printk("Writing CPUID feature mask ECX:EDX -> %08Xh:%08Xh\n", 
+               feat_ecx, feat_edx);
+        printk("Writing CPUID extended feature mask ECX:EDX -> %08Xh:%08Xh\n", 
+               extfeat_ecx, extfeat_edx);
 }
 
 /*
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-devel

 


Rackspace

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