x86/ucode-amd: fix regression from c/s 23871:503ee256fecf
authorJan Beulich <jbeulich@novell.com>
Mon, 24 Oct 2011 17:00:20 +0000 (18:00 +0100)
committerJan Beulich <jbeulich@novell.com>
Mon, 24 Oct 2011 17:00:20 +0000 (18:00 +0100)
commita16d59ea4b1b1463ac110e986a3c4e7c983a2544
treec4bfb052004f28c89e2dbd10a18335905c78dc10
parentd740d811925385c09553cbe6dee8e77c1d43b198
x86/ucode-amd: fix regression from c/s 23871:503ee256fecf

microcode_fits() must return distinct values for the success and
no-fit-but-no-error cases, so the caller can react accordingly. Make
it return 1 in the success case, and adjust its single caller.

Also remove an impossible code path - install_equiv_cpu_table(), which
gets called prior to microcode_fits(), never leaves equiv_cpu_table
being NULL without also returning an error.

Note that this is still awaiting testing on a system where the
regression was actually observed (which also requires a new enough
microcode_ctl package). Note also that this will need to be
backported to 4.0 and 4.1 (or the broken c/s that got backported
there reverted).

Signed-off-by: Jan Beulich <jbeulich@novell.com>
Committed-by: Keir Fraser <keir@xen.org>
xen/arch/x86/microcode_amd.c