Re: [PATCH] arm64: Select POSIX_CPU_TIMERS_TASK_WORK
From: Mark Rutland
Date: Wed Oct 27 2021 - 07:27:13 EST
[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@xxxxxxxxxxxxx/
> [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@xxxxxxxxxx>
Regardless, this makes sense to me, and given you've tested it:
Acked-by: Mark Rutland <mark.rutland@xxxxxxx>
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
> --
> 2.32.0
>