WelcomeWelcome | FAQFAQ | DownloadsDownloads | WikiWiki

Author Topic: Linux kernel removing 486 support  (Read 631 times)

Offline danielibarnes

  • Hero Member
  • *****
  • Posts: 549
Linux kernel removing 486 support
« on: April 28, 2025, 05:04:09 PM »
This conversation came up a few years back, but looks like it will happen now. Ingo Molnar wants to remove 486 support from the Linux kernel:
x86: Remove support for TSC-less and CX8-less CPUs

Offline CNK

  • Wiki Author
  • Sr. Member
  • *****
  • Posts: 354
Re: Linux kernel removing 486 support
« Reply #1 on: April 28, 2025, 06:43:41 PM »
Also note that, due to a bug, TC16 doesn't boot on a 486 unless the kernel is recompiled using the patch I suggested here.

Offline cparke

  • Newbie
  • *
  • Posts: 27
Re: Linux kernel removing 486 support
« Reply #2 on: May 10, 2025, 03:20:22 AM »
I do wish that TC will continue to offer a kernel which supports 486 in future versions.

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 15168
Re: Linux kernel removing 486 support
« Reply #3 on: May 10, 2025, 04:04:31 AM »
That's the aim - if possible

Offline cparke

  • Newbie
  • *
  • Posts: 27
Re: Linux kernel removing 486 support
« Reply #4 on: May 10, 2025, 02:47:24 PM »
Is there any browser in the TCE library that works on the 486?  Or is a custom build of firefox or chromium needed for that?

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 15168
Re: Linux kernel removing 486 support
« Reply #5 on: May 11, 2025, 04:42:34 AM »
Also note that, due to a bug, TC16 doesn't boot on a 486 unless the kernel is recompiled using the patch I suggested here.

The patch does not apply cleanly?

Offline CNK

  • Wiki Author
  • Sr. Member
  • *****
  • Posts: 354
Re: Linux kernel removing 486 support
« Reply #6 on: May 11, 2025, 06:49:28 PM »
@cparke
Firefox or Chromium on a 486 is madness, there's no hope of that. elinks-nodep.tcz is a good web browser option for 486 except it doesn't do HTTPS. links.tcz should work if you have more patience and RAM. Also dillo.tcz and links-full.tcz if you have enough RAM to run X. I'm not sure about netsurf.tcz, and anything based on Firefox or Chrome browser engines (eg. Brave) will have vastly higher system requirements.

@Juanito
The patch applied for me on the latest kernel release, but "patch" wouldn't apply it to arch/x86/kernel/cpu/microcode/amd.c in kernel v6.12.11.

I'm not that good with "patch", there might be options that will make it work. Since the function that's changed is identical I copied the changed lines over manually. It might also be different if you use Git, which I'm even more lost with.

I can look back at it again if you really want, but I just deleted all the kernel building stuff from my VPS to save space last night since I thought nothing more was happening with it!

Offline Paul_123

  • Administrator
  • Hero Member
  • *****
  • Posts: 1404
Re: Linux kernel removing 486 support
« Reply #7 on: May 11, 2025, 09:53:04 PM »
This patch is only going to help up until they remove the 486 support,  from that point forward it’s a much bigger task to maintain if at all.

Hard to say if/when they will do it.   It does look like the fix CNK mentioned was just merged into mainline.  Perhaps they’ll keep the 486 support in unit after the next long term kernel release.

Offline vinceASPECT

  • Hero Member
  • *****
  • Posts: 850
Re: Linux kernel removing 486 support
« Reply #8 on: May 12, 2025, 02:12:00 AM »
Right.

i can remember buying my first new PC, after much concideration and i managed to get it to be a 586
at great value and pleasing.

That was in 1996.  "Cyrix  5x86 " chip.

so i don't know the exact date i486 was introduced, but maybe 1991 .....?
Perplexity says  1989 ....

so nearly   37 years ago.

i have no doubt that billions of the working machines still exist.
regards



 

« Last Edit: May 12, 2025, 02:42:24 AM by vinceASPECT »

Offline CNK

  • Wiki Author
  • Sr. Member
  • *****
  • Posts: 354
Re: Linux kernel removing 486 support
« Reply #9 on: May 12, 2025, 03:54:13 AM »
This patch is only going to help up until they remove the 486 support,  from that point forward it’s a much bigger task to maintain if at all.

Sure, I wouldn't expect TCL to keep 486 support if they do that.

It does look like the fix CNK mentioned was just merged into mainline.

Great, yes I see it here.

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 15168
Re: Linux kernel removing 486 support
« Reply #10 on: May 12, 2025, 05:58:19 AM »
It still doesn't apply cleanly:
Code: [Select]
patch -Np1 -i ../linux-6.12.11_i486_fix.patch
patching file arch/x86/include/asm/microcode.h
patching file arch/x86/kernel/cpu/microcode/amd.c
Hunk #1 FAILED at 1098.
1 out of 1 hunk FAILED -- saving rejects to file arch/x86/kernel/cpu/microcode/amd.c.rej
patching file arch/x86/kernel/cpu/microcode/core.c
patching file arch/x86/kernel/cpu/microcode/intel.c
Hunk #1 succeeded at 395 (offset 6 lines).
patching file arch/x86/kernel/cpu/microcode/internal.h
patching file arch/x86/kernel/head32.c

arch/x86/kernel/cpu/microcode/amd.c is only 1091 lines long and the code around that point does not resemble the patch.

The code does appear around line 610, so I'll try to compile with a manual patch...
« Last Edit: May 12, 2025, 06:03:37 AM by Juanito »

Offline CNK

  • Wiki Author
  • Sr. Member
  • *****
  • Posts: 354
Re: Linux kernel removing 486 support
« Reply #11 on: May 12, 2025, 07:23:41 AM »
Yeah the reason "patch" can't find the new location is the lines immediately under the last change to that file is different in the later kernel versions:

6.12:
Code: [Select]
        if (dis_ucode_ldr || c->x86_vendor != X86_VENDOR_AMD || c->x86 < 0x10)
                return 0;

        find_blobs_in_containers(&cp);
        if (!(cp.data && cp.size))
                return -EINVAL;

6.14:
Code: [Select]
        if (dis_ucode_ldr || c->x86_vendor != X86_VENDOR_AMD || c->x86 < 0x10)
                return 0;

        if (!find_blobs_in_containers(&cp))
                return -EINVAL;

That difference doesn't seem to matter for the code of the patch, and there are no other changes in the later versions of that function.
« Last Edit: May 12, 2025, 07:32:53 AM by CNK »

Offline Juanito

  • Administrator
  • Hero Member
  • *****
  • Posts: 15168
Re: Linux kernel removing 486 support
« Reply #12 on: May 12, 2025, 08:18:35 AM »
Test kernel compiled - could somebody with an i486 give it a go please?

http://tinycorelinux.net/16.x/x86/release/distribution_files/i486/bzImage

..temporarily replace the existing vmlinuz in your bootloader config with bzImage above to test.

Offline CNK

  • Wiki Author
  • Sr. Member
  • *****
  • Posts: 354
Re: Linux kernel removing 486 support
« Reply #13 on: May 12, 2025, 06:12:55 PM »
Boots fine on my 486DX2 PC!