Skip to main content
Topic: [SOLVED} Firmware Bug TSC_DEADLINE (Read 946 times) previous topic - next topic
0 Members and 1 Guest are viewing this topic.

[SOLVED} Firmware Bug TSC_DEADLINE

After a recent update to my runit artix running on  Intel(R) Core(TM) i5-5250U with kernel  linux-5.19.12-artix1-1 I see a new boot message.

[Firmware Bug]: TSC_DEADLINE disabled due to Errata; please update microcode to version 0x25 or later)

anyone got any ideas what this means? I have no idea which firmware is being referenced.

The system does boot after this message and appears to work OK.

Re: Firmware Bug TSC_DEADLINE

Reply #1
After a recent update to my runt artix running on  Intel(R) Core(TM) i5-5250U with kernel  linux-5.19.12-artix1-1 I see a new boot message.

[Firmware Bug]: TSC_DEADLINE disabled due to Errata; please update microcode to version 0x25 or later)

anyone got any ideas what this means? I have no idea which firmware is being referenced.

The system does boot after this message and appears to work OK.
Do you have microcode updates enabled?

My guess is that your CPU has a bug and needs a microcode update to fix it.

Re: Firmware Bug TSC_DEADLINE

Reply #2
Do you have microcode updates enabled?

My guess is that your CPU has a bug and needs a microcode update to fix it.
I don't think I do. Looking at the Arch linux wiki it seems that I have to decode the download from here https://github.com/intel/Intel-Linux-Processor-Microcode-Data-Files/releases and I guess move the contents of intel-ucode into /usr/lib/firmware/intel-ucode.

I tried checking if the recommended command would work, but get this
Code: [Select]
# echo 1 > /sys/devices/system/cpu/microcode/reload
bash: /sys/devices/system/cpu/microcode/reload: Permission denied

 so I guess I either need to try early updating or something else.

Re: Firmware Bug TSC_DEADLINE

Reply #3
The command you issued would need to be run as root.
You are reading it wrong.
Install:
  • amd-ucode for AMD processors,
  • intel-ucode for Intel processors.
Assuming you a using grub (most likely)
Code: [Select]
sudo grub-mkconfig -o /boot/grub/grub.cfg
Then microcode should be loaded if it isn't already.

Re: Firmware Bug TSC_DEADLINE

Reply #4
OK I did that and after a quick check of the cfg (it does mention the ucode img) I rebooted. However, with that grub.cfg in place in /boot I seem to immediately go into the BIOS update software. Normally I have to press F2 to get that. pressing Esc (discard) / F10 (save) and exit starts a reboot again, but I still end up in the BIOS update. Do I have to do something to get the system to run.

I did keep the old grub.cfg and if I boot with a stick and restore that the system boots normally from the hard disk (actually an nvme).

Obviously I'm a moron and not understanding what I need to do.

Re: Firmware Bug TSC_DEADLINE

Reply #5
I don't know.
That's odd. Normally a special EFI variable has to be set to cause automatic entry the UEFI / BIOS settings on reboot.
If it's going straight into UEFI settings then normally that would mean it hasn't got as far as grub and reading grub.cfg

However a menu setting can be added to grub like
Code: [Select]
if [ ${grub_platform} == "efi" ]; then
menuentry 'UEFI Firmware Settings' --id 'uefi-firmware' {
fwsetup
}
fi
to give the option to reboot into UEFI settings within the grub menu. From here https://wiki.archlinux.org/title/GRUB#%22UEFI_Firmware_Settings%22_menu_entry

I don't see how that's ended being added just by installing microcode and updating grub. And it would just happen automatically.

I apologize for inadvertently breaking your setup by my advice but I believe it was the correct advice.

If possible post both grub.cfg's and also /etc/default/grub.

Definitely not a moron as you made a backup. That's between clever and genius.

Re: Firmware Bug TSC_DEADLINE

Reply #6
CPU Microcode afaik:
There is default microcode in the CPU when it is made. This is permanently in place but the CPU has memory to store a newer version which is lost when the chip is powered off, so it needs to be reloaded every boot.
Microcode updates can be in the BIOS, which is the best place for them for security reasons, often the latest BIOS will have the latest microcode, so if your BIOS is at the latest version you can forget about microcode if you check the release numbers of the contents.
Microcode updates can be loaded by the OS at boot time. In this case there are 2 packages amd-ucode and intel-ucode, so you can just install the right one of those for an easy solution, or of course you can manually get the microcode yourself if you want.

Re: Firmware Bug TSC_DEADLINE

Reply #7
......
Microcode updates can be in the BIOS, which is the best place for them for security reasons, often the latest BIOS will have the latest microcode, so if your BIOS is at the latest version you can forget about microcode if you check the release numbers of the contents.
......

I searched for a bios update and after a bit of investigating the actual kit versus board numbers for this ancient NUC I was able to update the bios from 2016 version to a 2022 one.

After a reboot I see the Firmware Bug message is gone :)

thanks to all. I'll mark this as solved.