On 21/09/2022 02:08, Marc Zyngier wr
ote:
On Tue, 20 Sep 2022 13:51:43 +0100,
Alexey Kardashevskiy <aik@xxxxxxxxx> wrote:
When introduced, IRQFD resampling worked on POWER8 with XICS. However
KVM on POWER9 has never implemented it - the compatibility mode code
("XICS-on-XIVE") misses the kvm_notify_acked_irq() call and the native
XIVE mode does not handle INTx in KVM at all.
This moved the capability support advertising to platforms and stops
advertising it on XIVE, i.e. POWER9 and later.
Signed-off-by: Alexey Kardashevskiy <aik@xxxxxxxxx>
Acked-by: Nicholas Piggin <npiggin@xxxxxxxxx>
[For KVM RISC-V]
Acked-by: Anup Patel <anup@xxxxxxxxxxxxxx>
---
Changes:
v2:
* removed ifdef for ARM64.
The same argument applies to both x86 and s390, which do select
HAVE_KVM_IRQFD from the KVM config option. Only power allows this
option to be selected depending on the underlying interrupt controller
emulation.
As for riscv and mips, they don't select HAVE_KVM_IRQFD, and this
isn't a user-selectable option. So why do they get patched at all?
Before the patch, the capability was advertised on those, with your
proposal it will stop. Which is a change in behavior which some may say
requires a separate patch (like, one per platform). I am definitely
overthinking it though and you are right.
My conclusion is that:
- only power needs the #ifdefery in the arch-specific code
- arm64, s390 and x86 can use KVM_CAP_IRQFD_RESAMPLE without a #ifdef
- mips and riscv should be left alone
Fair enough, thanks for the review! I'll post v3 shortly.
Thanks,
M.
--
Alexey