From c79570205ba6064bd756f531e6d9d0b498a191d6 Mon Sep 17 00:00:00 2001 From: Borislav Petkov Date: Fri, 19 Oct 2018 14:09:39 +0200 Subject: x86/microcode/AMD: Move chipset-specific check into verify_patch() ... where it belongs. No functional changes. Signed-off-by: Borislav Petkov Cc: x86@kernel.org https://lkml.kernel.org/r/20181107170218.7596-10-bp@alien8.de --- arch/x86/kernel/cpu/microcode/amd.c | 12 ++++++------ 1 file changed, 6 insertions(+), 6 deletions(-) (limited to 'arch/x86/kernel/cpu/microcode') 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"); -- cgit v1.2.3