On Tue, Apr 11, 2023, Xin3 Li wrote: > > > > kvm_before_interrupt(vcpu, KVM_HANDLING_IRQ); > > - vmx_do_interrupt_irqoff(gate_offset(desc)); > > + if (cpu_feature_enabled(X86_FEATURE_FRED)) > > + vmx_do_fred_interrupt_irqoff(vector); > > + else > > + vmx_do_interrupt_irqoff(gate_offset((gate_desc *)host_idt_base > > > external_interrupt() is always available on x86_64, even when CONFIG_X86_FRED > is not defined. I prefer to always call external_interrupt() on x86_64 for IRQ > handling, which avoids re-entering noinstr code. how do you think? Too > aggressive? I think it's completely orthogonal to FRED enabling. If you or anyone else wants to convert the non-FRED handling to external_interrupt(), then do so after FRED lands, or at the very least in a separate patch after enabling FRED in KVM.