Messages in this thread Patch in this message | | | From | Borislav Petkov <> | Subject | [PATCH 09/16] x86/microcode/AMD: Move chipset-specific check into verify_patch() | Date | Wed, 7 Nov 2018 18:02:11 +0100 |
| |
From: Borislav Petkov <bp@suse.de>
... where it belongs.
No functional changes.
Signed-off-by: Borislav Petkov <bp@suse.de> --- arch/x86/kernel/cpu/microcode/amd.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-)
diff --git a/arch/x86/kernel/cpu/microcode/amd.c b/arch/x86/kernel/cpu/microcode/amd.c index be46e1fda77f..ebac82357639 100644 --- a/arch/x86/kernel/cpu/microcode/amd.c +++ b/arch/x86/kernel/cpu/microcode/amd.c @@ -249,6 +249,12 @@ verify_patch(u8 family, const u8 *buf, unsigned int buf_size, bool early) mc_hdr = (struct microcode_header_amd *)(buf + SECTION_HDR_SIZE); proc_id = mc_hdr->processor_rev_id; + if (mc_hdr->nb_dev_id || mc_hdr->sb_dev_id) { + if (!early) + pr_err("Patch-ID 0x%08x: chipset-specific code unsupported.\n", mc_hdr->patch_id); + return 0; + } + patch_fam = 0xf + (proc_id >> 12); if (patch_fam != family) return 0; @@ -741,12 +747,6 @@ static int verify_and_add_patch(u8 family, u8 *fw, unsigned int leftover) mc_hdr = (struct microcode_header_amd *)(fw + SECTION_HDR_SIZE); proc_id = mc_hdr->processor_rev_id; - if (mc_hdr->nb_dev_id || mc_hdr->sb_dev_id) { - pr_err("Patch-ID 0x%08x: chipset-specific code unsupported.\n", - mc_hdr->patch_id); - return crnt_size; - } - patch = kzalloc(sizeof(*patch), GFP_KERNEL); if (!patch) { pr_err("Patch allocation failure.\n"); -- 2.19.1
| |