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

Re: [Xen-devel] pvops microcode support for AMD FAM >= 15



On Mon, 2012-11-26 at 23:47 +0000, Boris Ostrovsky wrote:
> 
> On 11/26/2012 09:58 AM, Boris Ostrovsky wrote:
> >
> >
> > On 11/26/2012 09:13 AM, Ian Campbell wrote:
> >> On Mon, 2012-11-26 at 13:44 +0000, Jan Beulich wrote:
> 
> >>>
> >>> The only other thing to check for is that you don't have any
> >>> artificial size restriction left in that code (I think patch files early
> >>> on were limited to 4k in size, and that got lifted during the last
> >>> couple of years).
> >>
> >> I can't find one by inspection, it uses the standard request_firmware
> >> interface and stashes the result in a valloc'd buffer, neither of which
> >> suffer from any 4K related limitations AFAIK.
> >>
> >> I'll try and track something more recent down to test but the worst
> >> downside of applying this patch seems to be that something which doesn't
> >> work still doesn't work.
> >
> > I submitted a fix for fam 16h to Linux right before the Thanksgiving
> > break in US and was planning to look at Xen as well. Give me a day or
> > two to test it.
> 
> It works fine, no issues with size (which is different from other families).

I've just tried this on a fam 15h and I get:

        (XEN) microcode: collect_cpu_info: patch_id=0x6000626
        (XEN) microcode: size 5260, block size 2592, offset 60
        (XEN) microcode: CPU0 found a matching microcode update with version 
0x6000629 (current=0x6000626)
        (XEN) microcode: CPU0 updated from revision 0x6000626 to 0x6000629
        
        (XEN) microcode: collect_cpu_info: patch_id=0x6000629
        (XEN) microcode: size 5260, block size 2592, offset 60
        (XEN) microcode: size 5260, block size 2592, offset 2660
        (XEN) microcode: CPU1 patch does not match (patch is 6101, cpu base id 
is 6012) 
        
        (XEN) microcode: collect_cpu_info: patch_id=0x6000626
        (XEN) microcode: size 5260, block size 2592, offset 60
        (XEN) microcode: CPU2 found a matching microcode update with version 
0x6000629 (current=0x6000626)
        (XEN) microcode: CPU2 updated from revision 0x6000626 to 0x6000629
        
        (XEN) microcode: collect_cpu_info: patch_id=0x6000629
        (XEN) microcode: size 5260, block size 2592, offset 60
        (XEN) microcode: size 5260, block size 2592, offset 2660
        (XEN) microcode: CPU3 patch does not match (patch is 6101, cpu base id 
is 6012) 
        
        (XEN) microcode: collect_cpu_info: patch_id=0x6000626
        (XEN) microcode: size 5260, block size 2592, offset 60
        (XEN) microcode: CPU4 found a matching microcode update with version 
0x6000629 (current=0x6000626)
        (XEN) microcode: CPU4 updated from revision 0x6000626 to 0x6000629
        
        (XEN) microcode: collect_cpu_info: patch_id=0x6000629
        (XEN) microcode: size 5260, block size 2592, offset 60
        (XEN) microcode: size 5260, block size 2592, offset 2660
        (XEN) microcode: CPU5 patch does not match (patch is 6101, cpu base id 
is 6012) 
        
        (XEN) microcode: collect_cpu_info: patch_id=0x6000626
        (XEN) microcode: size 5260, block size 2592, offset 60
        (XEN) microcode: CPU6 found a matching microcode update with version 
0x6000629 (current=0x6000626)
        (XEN) microcode: CPU6 updated from revision 0x6000626 to 0x6000629
        
        ....

It seems like it is applying successfully on only the even numbered
cpus. Is this because the odd and even ones share some execution units
and therefore share microcode updates too? IOW update CPU0 also updates
CPU1 under the hood.

If so then we probably want to teach Xen about this, although at least
for now though it would mean that the microcode is actually getting
applied despite the messages.

Ian.
-- 
Ian Campbell

I like your game but we have to change the rules.


_______________________________________________
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®.