[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [xen master] x86/hpet: Disable legacy replacement mode after IRQ test
commit 5eb8c15171f72f155a5cba8400eb940b44187867 Author: Simon Gaiser <simon@xxxxxxxxxxxxxxxxxxxxxx> AuthorDate: Tue Aug 22 08:51:38 2023 +0200 Commit: Jan Beulich <jbeulich@xxxxxxxx> CommitDate: Tue Aug 22 08:51:38 2023 +0200 x86/hpet: Disable legacy replacement mode after IRQ test As far as I understand the HPET legacy mode is not required after the timer IRQ test. For previous discussion see [1] and [2]. Keeping it enabled prevents reaching deeper C-states on some systems and thereby also S0ix residency. So disable it after the timer IRQ test worked. Note that this code path is only reached when opt_hpet_legacy_replacement < 0, so explicit user choice is still honored. Link: https://lore.kernel.org/xen-devel/cb408368-077d-edb5-b4ad-f80086db48c1@xxxxxxxxxxxxxxxxxxxxxx/ # [1] Link: https://lore.kernel.org/xen-devel/20230718122603.2002-1-simon@xxxxxxxxxxxxxxxxxxxxxx/ # [2] Signed-off-by: Simon Gaiser <simon@xxxxxxxxxxxxxxxxxxxxxx> Reviewed-by: Jan Beulich <jbeulich@xxxxxxxx> --- xen/arch/x86/io_apic.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/xen/arch/x86/io_apic.c b/xen/arch/x86/io_apic.c index b3afef8933..0ef61fb2f1 100644 --- a/xen/arch/x86/io_apic.c +++ b/xen/arch/x86/io_apic.c @@ -1964,6 +1964,9 @@ static void __init check_timer(void) if ( timer_irq_works() ) { + printk(XENLOG_DEBUG + "IRQ test with HPET Legacy Replacement Mode worked - disabling it again\n"); + hpet_disable_legacy_replacement_mode(); local_irq_restore(flags); return; } -- generated by git-patchbot for /home/xen/git/xen.git#master
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |