On Tue, Oct 05 2021 at 11:54, Mark Rutland wrote: > On Tue, Oct 05, 2021 at 11:52:52AM +0200, Thomas Gleixner wrote: >> Jan, >> >> On Mon, Oct 04 2021 at 19:54, Jan Kiszka wrote: >> > what's the state of getting kvm working (again?) along RT? Seems >> > HAVE_POSIX_CPU_TIMERS_TASK_WORK is in conflict with KVM but a >> > precondition for RT on recent kernels. What's the story behind that? >> >> the ARM64 KVM implementation is incorrect vs. TIF handling before >> VMENTER which breaks the posix cpu timers task work assumptions and also >> violates a few other expectations. AFAICT the arm64 folks are working on >> that, but you have to ask them directly what the state of this is. > > I think that was dealt with as of mainline commits: > > * e1c6b9e1669e44fb ("entry: KVM: Allow use of generic KVM entry w/o full generic support") > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=e1c6b9e1669e44fb7f9688e34e460b759e3b9187 > > * 6caa5812e2d126a0 ("KVM: arm64: Use generic KVM xfer to guest work function") > https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=6caa5812e2d126a0aa8a17816c1ba6f0a0c2b309 > > ... unless I'm missing something. Just a minor detail: $ cd linus $ git grep HAVE_POSIX_CPU_TIMERS_TASK_WORK arch/x86/Kconfig: select HAVE_POSIX_CPU_TIMERS_TASK_WORK kernel/time/Kconfig:config HAVE_POSIX_CPU_TIMERS_TASK_WORK kernel/time/Kconfig: default y if POSIX_TIMERS && HAVE_POSIX_CPU_TIMERS_TASK_WORK $cd rt $ git grep HAVE_POSIX_CPU_TIMERS_TASK_WORK arch/arm/Kconfig: select ARCH_SUPPORTS_RT if HAVE_POSIX_CPU_TIMERS_TASK_WORK arch/arm/Kconfig: select HAVE_POSIX_CPU_TIMERS_TASK_WORK if !KVM arch/arm64/Kconfig: select ARCH_SUPPORTS_RT if HAVE_POSIX_CPU_TIMERS_TASK_WORK arch/arm64/Kconfig: select HAVE_POSIX_CPU_TIMERS_TASK_WORK if !KVM arch/powerpc/Kconfig: select ARCH_SUPPORTS_RT if HAVE_POSIX_CPU_TIMERS_TASK_WORK arch/powerpc/Kconfig: select HAVE_POSIX_CPU_TIMERS_TASK_WORK if !KVM arch/x86/Kconfig: select HAVE_POSIX_CPU_TIMERS_TASK_WORK Which is simply because arm64 does not yet have: arch/arm64/Kconfig: select HAVE_POSIX_CPU_TIMERS_TASK_WORK set in mainline to indicate that it does support it unconditionally including in KVM. See? Thanks, tglx