[PATCH] arm64: Select POSIX_CPU_TIMERS_TASK_WORK

Marc Zyngier maz at kernel.org
Wed Oct 27 05:20:23 PDT 2021


On Wed, 27 Oct 2021 12:26:58 +0100,
Mark Rutland <mark.rutland at arm.com> wrote:
> 
> [adding Marc Z to Cc, since this affects KVM]
> 
> On Mon, Oct 18, 2021 at 04:47:13PM +0200, Nicolas Saenz Julienne wrote:
> > With 6caa5812e2d1 ("KVM: arm64: Use generic KVM xfer to guest work
> > function") all arm64 exit paths are properly equipped to handle the
> > POSIX timers' task work.
> > 
> > Deferring timer callbacks to thread context, not only limits the amount
> > of time spent in hard interrupt context, but is a safer
> > implementation[1], and will allow PREEMPT_RT setups to use KVM[2].
> > 
> > So let's enable POSIX_CPU_TIMERS_TASK_WORK on arm64.
> > 
> > [1] https://lore.kernel.org/all/20200716201923.228696399@linutronix.de/
> > [2] https://www.spinics.net/lists/linux-rt-users/msg24860.html
> 
> Trivial nit: could we please make that second link:
> 
>   https://lore.kernel.org/linux-rt-users/87v92bdnlx.ffs@tglx/
> 
> > Signed-off-by: Nicolas Saenz Julienne <nsaenzju at redhat.com>
> 
> Regardless, this makes sense to me, and given you've tested it:
> 
> Acked-by: Mark Rutland <mark.rutland at arm.com>
> 
> Thanks,
> Mark.
> 
> > 
> > ---
> > 
> > This was tested by running all relevant kernel timer self-tests and
> > making sure KVM still works as expected.
> > 
> >  arch/arm64/Kconfig | 1 +
> >  1 file changed, 1 insertion(+)
> > 
> > diff --git a/arch/arm64/Kconfig b/arch/arm64/Kconfig
> > index 789036cf74f5..ce0d0d254542 100644
> > --- a/arch/arm64/Kconfig
> > +++ b/arch/arm64/Kconfig
> > @@ -191,6 +191,7 @@ config ARM64
> >  	select HAVE_PERF_REGS
> >  	select HAVE_PERF_USER_STACK_DUMP
> >  	select HAVE_REGS_AND_STACK_ACCESS_API
> > +	select HAVE_POSIX_CPU_TIMERS_TASK_WORK
> >  	select HAVE_FUNCTION_ARG_ACCESS_API
> >  	select HAVE_FUTEX_CMPXCHG if FUTEX
> >  	select MMU_GATHER_RCU_TABLE_FREE

Looks reasonable to me.

Acked-by: Marc Zyngier <maz at kernel.org>

	M.

-- 
Without deviation from the norm, progress is not possible.



More information about the linux-arm-kernel mailing list