linux-rt-users.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Thomas Gleixner <tglx@linutronix.de>
To: Mark Rutland <mark.rutland@arm.com>
Cc: Jan Kiszka <jan.kiszka@siemens.com>,
	RT <linux-rt-users@vger.kernel.org>,
	maz@kernel.org
Subject: Re: arm64: kvm + RT
Date: Wed, 06 Oct 2021 02:05:14 +0200	[thread overview]
Message-ID: <87v92bdnlx.ffs@tglx> (raw)
In-Reply-To: <20211005105449.GC1664@C02TD0UTHF1T.local>

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

      reply	other threads:[~2021-10-06  0:05 UTC|newest]

Thread overview: 5+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-10-04 17:54 arm64: kvm + RT Jan Kiszka
2021-10-05  9:52 ` Thomas Gleixner
2021-10-05 10:01   ` Jan Kiszka
2021-10-05 10:54   ` Mark Rutland
2021-10-06  0:05     ` Thomas Gleixner [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=87v92bdnlx.ffs@tglx \
    --to=tglx@linutronix.de \
    --cc=jan.kiszka@siemens.com \
    --cc=linux-rt-users@vger.kernel.org \
    --cc=mark.rutland@arm.com \
    --cc=maz@kernel.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).