mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
synced 2024-11-01 00:48:50 +00:00
x86/microcode/AMD: Use find_microcode_in_initrd()
Use the generic helper instead of semi-open-coding the procedure. Signed-off-by: Borislav Petkov <bp@suse.de> Reviewed-by: Thomas Gleixner <tglx@linutronix.de> Link: http://lkml.kernel.org/r/20170120202955.4091-11-bp@alien8.de Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
This commit is contained in:
parent
3da9b41794
commit
8cc26e0b4c
1 changed files with 5 additions and 11 deletions
|
@ -337,17 +337,15 @@ void load_ucode_amd_ap(unsigned int cpuid_1_eax)
|
|||
|
||||
/* First AP hasn't cached it yet, go through the blob. */
|
||||
if (!cont.data) {
|
||||
struct cpio_data cp = { NULL, 0, "" };
|
||||
struct cpio_data cp;
|
||||
|
||||
if (cont.size == -1)
|
||||
return;
|
||||
|
||||
reget:
|
||||
if (!get_builtin_microcode(&cp, x86_family(cpuid_1_eax))) {
|
||||
#ifdef CONFIG_BLK_DEV_INITRD
|
||||
cp = find_cpio_data(ucode_path, (void *)initrd_start,
|
||||
initrd_end - initrd_start, NULL);
|
||||
#endif
|
||||
cp = find_microcode_in_initrd(ucode_path, false);
|
||||
|
||||
if (!(cp.data && cp.size)) {
|
||||
/*
|
||||
* Mark it so that other APs do not scan again
|
||||
|
@ -401,13 +399,9 @@ int __init save_microcode_in_initrd_amd(unsigned int cpuid_1_eax)
|
|||
|
||||
if (!cont.data) {
|
||||
if (IS_ENABLED(CONFIG_X86_32) && (cont.size != -1)) {
|
||||
struct cpio_data cp = { NULL, 0, "" };
|
||||
|
||||
#ifdef CONFIG_BLK_DEV_INITRD
|
||||
cp = find_cpio_data(ucode_path, (void *)initrd_start,
|
||||
initrd_end - initrd_start, NULL);
|
||||
#endif
|
||||
struct cpio_data cp;
|
||||
|
||||
cp = find_microcode_in_initrd(ucode_path, false);
|
||||
if (!(cp.data && cp.size)) {
|
||||
cont.size = -1;
|
||||
return -EINVAL;
|
||||
|
|
Loading…
Reference in a new issue