Commit a1a32d29 authored by Borislav Petkov's avatar Borislav Petkov Committed by Ingo Molnar

x86/microcode/intel: Get rid of revision_is_newer()

It is a one-liner for checking microcode header revisions. On top of
that, it can be used wrong as it was the case in _save_mc(). Get rid of
it.
Signed-off-by: default avatarBorislav Petkov <bp@suse.de>
Acked-by: default avatarQuentin Casasnovas <quentin.casasnovas@oracle.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: H. Peter Anvin <hpa@zytor.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: default avatarIngo Molnar <mingo@kernel.org>
parent 5198b443
...@@ -60,12 +60,6 @@ extern int get_matching_microcode(unsigned int csig, int cpf, int rev, void *mc) ...@@ -60,12 +60,6 @@ extern int get_matching_microcode(unsigned int csig, int cpf, int rev, void *mc)
extern int microcode_sanity_check(void *mc, int print_err); extern int microcode_sanity_check(void *mc, int print_err);
extern int get_matching_sig(unsigned int csig, int cpf, int rev, void *mc); extern int get_matching_sig(unsigned int csig, int cpf, int rev, void *mc);
static inline int
revision_is_newer(struct microcode_header_intel *mc_header, int rev)
{
return (mc_header->rev <= rev) ? 0 : 1;
}
#ifdef CONFIG_MICROCODE_INTEL_EARLY #ifdef CONFIG_MICROCODE_INTEL_EARLY
extern void __init load_ucode_intel_bsp(void); extern void __init load_ucode_intel_bsp(void);
extern void load_ucode_intel_ap(void); extern void load_ucode_intel_ap(void);
......
...@@ -262,7 +262,7 @@ static unsigned int _save_mc(struct microcode_intel **mc_saved, ...@@ -262,7 +262,7 @@ static unsigned int _save_mc(struct microcode_intel **mc_saved,
found = 1; found = 1;
if (!revision_is_newer(mc_hdr, new_rev)) if (mc_hdr->rev <= mc_saved_hdr->rev)
continue; continue;
/* /*
......
...@@ -154,13 +154,13 @@ int get_matching_sig(unsigned int csig, int cpf, int rev, void *mc) ...@@ -154,13 +154,13 @@ int get_matching_sig(unsigned int csig, int cpf, int rev, void *mc)
/* /*
* Returns 1 if update has been found, 0 otherwise. * Returns 1 if update has been found, 0 otherwise.
*/ */
int get_matching_microcode(unsigned int csig, int cpf, int rev, void *mc) int get_matching_microcode(unsigned int csig, int cpf, int new_rev, void *mc)
{ {
struct microcode_header_intel *mc_hdr = mc; struct microcode_header_intel *mc_hdr = mc;
if (!revision_is_newer(mc_hdr, rev)) if (mc_hdr->rev <= new_rev)
return 0; return 0;
return get_matching_sig(csig, cpf, rev, mc); return get_matching_sig(csig, cpf, new_rev, mc);
} }
EXPORT_SYMBOL_GPL(get_matching_microcode); EXPORT_SYMBOL_GPL(get_matching_microcode);
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment