]> www.infradead.org Git - nvme.git/commitdiff
x86/microcode/AMD: Fix __apply_microcode_amd()'s return value
authorBoris Ostrovsky <boris.ostrovsky@oracle.com>
Thu, 27 Mar 2025 23:05:02 +0000 (19:05 -0400)
committerBorislav Petkov (AMD) <bp@alien8.de>
Fri, 28 Mar 2025 11:49:02 +0000 (12:49 +0100)
When verify_sha256_digest() fails, __apply_microcode_amd() should propagate
the failure by returning false (and not -1 which is promoted to true).

Fixes: 50cef76d5cb0 ("x86/microcode/AMD: Load only SHA256-checksummed patches")
Signed-off-by: Boris Ostrovsky <boris.ostrovsky@oracle.com>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Cc: stable@vger.kernel.org
Link: https://lore.kernel.org/r/20250327230503.1850368-2-boris.ostrovsky@oracle.com
arch/x86/kernel/cpu/microcode/amd.c

index 138689b8e1d8336c6ca46d9363ee8d80e13edb2f..b61028cf5c8a3b3b4f7fc8099747d26f392df0c6 100644 (file)
@@ -600,7 +600,7 @@ static bool __apply_microcode_amd(struct microcode_amd *mc, u32 *cur_rev,
        unsigned long p_addr = (unsigned long)&mc->hdr.data_code;
 
        if (!verify_sha256_digest(mc->hdr.patch_id, *cur_rev, (const u8 *)p_addr, psize))
-               return -1;
+               return false;
 
        native_wrmsrl(MSR_AMD64_PATCH_LOADER, p_addr);