[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <576F6A2E-7824-457B-B9D9-A315A18D1263@zytor.com>
Date: Sun, 06 Apr 2025 09:49:02 -0700
From: "H. Peter Anvin" <hpa@...or.com>
To: Kevin Koster <lkml@...ertech.com>, Borislav Petkov <bp@...en8.de>
CC: Oerg866 <oerg866@...glemail.com>, linux-kernel@...r.kernel.org,
Thomas Gleixner <tglx@...utronix.de>, Ingo Molnar <mingo@...hat.com>,
Dave Hansen <dave.hansen@...ux.intel.com>, x86@...nel.org
Subject: Re: [PATCH] x86/microcode: Fix crashes on early 486 CPUs due to usage of 'cpuid'.
On April 5, 2025 11:40:49 PM PDT, Kevin Koster <lkml@...ertech.com> wrote:
>On Sat, 5 Apr 2025 11:32:26 +0200
>Borislav Petkov <bp@...en8.de> wrote:
>> On Sat, Apr 05, 2025 at 01:03:06PM +1100, Kevin Koster wrote:
>> > On Sat, 19 Oct 2024 08:29:04 +0200
>> > Oerg866 <oerg866@...glemail.com> wrote:
>> >
>> > > Starting with v6.7-rc1, the kernel was no longer able to boot on
>> > > early i486-class CPUs.
>> >
>> > Thanks for this patch! It solves my problem with kernel 6.12.11
>> > rebooting at start-up on 486 CPUs, which had me puzzled. (tested on
>> > AM486DX2-66 and CX486DX4-100)
>> >
>> > Is there a reason why the patch wasn't accepted?
>>
>> Yes, too many patches, too little time. :-(
>>
>> Anyway, does the one below - only build-tested - work for both y'all
>> too?
>
>On my AM486DX2-66 it gets past the immediate reboot problem but gets
>an Oops and kernel panic here:
>
>[snip]
>smpboot: SMP disabled
>Performance Events: no PMU driver, software events only.
>signal: max sigframe size: 928
>Oops: invalid opcode: 0000 [#1] SMP
>CPU: 0 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.14.0 #1
>EIP: 0xc0b5e1d7
>Code: 7d dc 00 74 0b b9 07 00 00 00 89 df b0 01 f3 a5 83 c4 1c 5b 5e 5f 5d c3 55 b8 01 00 00 00 89 e5 57 56 31 f6 53 89 f1 83 ec 30 <0f> a2 b9 04 00 00 00 89 45 c4 8d 7d c8 89 f0 f3 ab e8 a0 fc ff ff
>EAX: 00000001 EBX: c0be6b00 ECX: 00000000 EDX: 00000246
>ESI: 00000000 EDI: 00000000 EBP: c1309f08 ESP: c1309ecc
>DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 EFLAGS: 00010286
>CR0: 80050033 CR2: ffd38000 CR3: 00c16000 CR4: 00000000
>Call Trace:
> ? 0xc01231af
> ? 0xc01231c8
> ? 0xc0123222
> ? 0xc0123245
> ? 0xc01215ef
> ? 0xc01217f7
> ? 0xc0b5e1d7
> ? 0xc0848e09
> ? 0xc012186f
> ? 0xc0b5e1d7
> ? 0xc0848e41
> ? 0xc010105d
> ? 0xc01500d8
> ? 0xc0848e09
> ? 0xc0b5e1d7
> ? 0xc01500d8
> ? 0xc0848e09
> ? 0xc0b5e1d7
> ? 0xc085148a
> ? 0xc0524da8
> ? 0xc0b5e1c5
> 0xc0102100
> ? 0xc08514d5
> ? 0xc085148a
> ? 0xc0171bde
> ? 0xc0175987
> ? 0xc016d672
> 0xc0b4c9e2
> ? 0xc084c9b8
> 0xc084c9ca
> 0xc0127d3a
> ? 0xc084c9b8
> 0xc01027a2
> 0xc0100e3d
>Modules linked in:
>---[ end trace 0000000000000000 ]---
>EIP: 0xc0b5e1d7
>Code: 7d dc 00 74 0b b9 07 00 00 00 89 df b0 01 f3 a5 83 c4 1c 5b 5e 5f 5d c3 55 b8 01 00 00 00 89 e5 57 56 31 f6 53 89 f1 83 ec 30 <0f> a2 b9 04 00 00 00 89 45 c4 8d 7d c8 89 f0 f3 ab e8 a0 fc ff ff
>EAX: 00000001 EBX: c0be6b00 ECX: 00000000 EDX: 00000246
>ESI: 00000000 EDI: 00000000 EBP: c1309f08 ESP: c1309ecc
>DS: 007b ES: 007b FS: 00d8 GS: 0000 SS: 0068 EFLAGS: 00010286
>CR0: 80050033 CR2: ffd38000 CR3: 00c16000 CR4: 00000000
>Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
>Rebooting in 60 seconds..
Another case of it stumbling into a CPUID instruction. Of course, without a map file that dump is completely useless since it doesn't show any symbols.
Powered by blists - more mailing lists