]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
x86/microcode/AMD: Add some forgotten models to the SHA check
authorBorislav Petkov (AMD) <bp@alien8.de>
Fri, 7 Mar 2025 22:02:56 +0000 (23:02 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 13 Mar 2025 12:01:40 +0000 (13:01 +0100)
commit 058a6bec37c6c3b826158f6d26b75de43816a880 upstream.

Add some more forgotten models to the SHA check.

Fixes: 50cef76d5cb0 ("x86/microcode/AMD: Load only SHA256-checksummed patches")
Reported-by: Toralf Förster <toralf.foerster@gmx.de>
Signed-off-by: Borislav Petkov (AMD) <bp@alien8.de>
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Tested-by: Toralf Förster <toralf.foerster@gmx.de>
Link: https://lore.kernel.org/r/20250307220256.11816-1-bp@kernel.org
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
arch/x86/kernel/cpu/microcode/amd.c

index f5365b32582a5cff95716e05e0fcbfe9569c55c0..def6a2854a4b7cbc9c5a1d63e47230d0bba444e9 100644 (file)
@@ -175,23 +175,29 @@ static bool need_sha_check(u32 cur_rev)
 {
        switch (cur_rev >> 8) {
        case 0x80012: return cur_rev <= 0x800126f; break;
+       case 0x80082: return cur_rev <= 0x800820f; break;
        case 0x83010: return cur_rev <= 0x830107c; break;
        case 0x86001: return cur_rev <= 0x860010e; break;
        case 0x86081: return cur_rev <= 0x8608108; break;
        case 0x87010: return cur_rev <= 0x8701034; break;
        case 0x8a000: return cur_rev <= 0x8a0000a; break;
+       case 0xa0010: return cur_rev <= 0xa00107a; break;
        case 0xa0011: return cur_rev <= 0xa0011da; break;
        case 0xa0012: return cur_rev <= 0xa001243; break;
+       case 0xa0082: return cur_rev <= 0xa00820e; break;
        case 0xa1011: return cur_rev <= 0xa101153; break;
        case 0xa1012: return cur_rev <= 0xa10124e; break;
        case 0xa1081: return cur_rev <= 0xa108109; break;
        case 0xa2010: return cur_rev <= 0xa20102f; break;
        case 0xa2012: return cur_rev <= 0xa201212; break;
+       case 0xa4041: return cur_rev <= 0xa404109; break;
+       case 0xa5000: return cur_rev <= 0xa500013; break;
        case 0xa6012: return cur_rev <= 0xa60120a; break;
        case 0xa7041: return cur_rev <= 0xa704109; break;
        case 0xa7052: return cur_rev <= 0xa705208; break;
        case 0xa7080: return cur_rev <= 0xa708009; break;
        case 0xa70c0: return cur_rev <= 0xa70C009; break;
+       case 0xaa001: return cur_rev <= 0xaa00116; break;
        case 0xaa002: return cur_rev <= 0xaa00218; break;
        default: break;
        }