Patch "x86/apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on hypervisors" has been added to the 4.13-stable tree
Subsystems (2)
This is a note to let you know that I've just added the patch titled
x86/apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on hypervisors
to the 4.13-stable tree which can be found at:
http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary
The filename of the patch is:
x86-apic-silence-fw_bug-tsc_deadline-disabled-due-to-errata-on-hypervisors.patch
and it can be found in the queue-4.13 subdirectory.
If you, or anyone else, feels it should not be added to the stable tree, please let <[email protected]> know about it.
Quoted 1 line
From
cc6afe2240298049585e86b1ade85efc8a7f225dMon Sep 17 00:00:00 2001
From: Paolo Bonzini <[email protected]>
Date: Tue, 10 Oct 2017 12:12:57 +0200
Subject: x86/apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on hypervisors
From: Paolo Bonzini <[email protected]>
commit cc6afe2240298049585e86b1ade85efc8a7f225d upstream.
Commit 594a30fb1242 ("x86/apic: Silence "FW_BUG TSC_DEADLINE disabled due to Errata" on CPUs without the feature", 2017-08-30) was also about silencing the warning on VirtualBox; however, KVM does expose the TSC deadline timer, and it's virtualized so that it is immune from CPU errata.
Therefore, booting 4.13 with "-cpu Haswell" shows this in the logs:
[ 0.000000] [Firmware Bug]: TSC_DEADLINE disabled due to Errata;
please update microcode to version: 0xb2 (or later)Even if you had a hypervisor that does _not_ virtualize the TSC deadline and rather exposes the hardware one, it should be the hypervisors task to update microcode and possibly hide the flag from CPUID. So just hide the message when running on _any_ hypervisor, not just those that do not support the TSC deadline timer.
The older check still makes sense, so keep it.
--- arch/x86/kernel/apic/apic.c | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-)
arch/x86/kernel/apic/apic.c +2 -1
@@ -602,7 +602,8 @@ static void apic_check_deadline_errata(vconst struct x86_cpu_id *m;u32 rev; -if (!boot_cpu_has (X86_FEATURE_TSC_DEADLINE_TIMER )) +if (!boot_cpu_has (X86_FEATURE_TSC_DEADLINE_TIMER ) || +boot_cpu_has (X86_FEATURE_HYPERVISOR ))return ; m =x86_match_cpu (deadline_match);
Patches currently in stable-queue which might be from [email protected] are
queue-4.13/x86-apic-silence-fw_bug-tsc_deadline-disabled-due-to-errata-on-hypervisors.patch queue-4.13/x86-apic-silence-fw_bug-tsc_deadline-disabled-due-to-errata-on-cpus-without-the-feature.patch