Re: [PATCH] KVM: arm64: Select SCHED_INFO before SCHEDSTATS

From: Marc Zyngier
Date: Thu Oct 24 2019 - 09:19:16 EST


On 2019-10-24 12:22, Steven Price wrote:

[...]

From 915893f5c57241cc29d90769b3f720a6135277d7 Mon Sep 17 00:00:00 2001
From: Steven Price <steven.price@xxxxxxx>
Date: Thu, 24 Oct 2019 12:14:36 +0100
Subject: [PATCH] KVM: arm64: Select TASK_DELAY_ACCT rather than SCHEDSTATS

SCHEDSTATS requires DEBUG_KERNEL (and PROC_FS) and therefore isn't a
good choice for enabling the scheduling statistics required for stolen
time.

Instead match the x86 configuration and select TASK_DELAY_ACCT. This
adds the dependencies of NET && MULTIUSER for arm64 KVM.

Suggested-by: Marc Zyngier <maz@xxxxxxxxxx>
Fixes: 8564d6372a7d ("KVM: arm64: Support stolen time reporting via
shared structure")
Signed-off-by: Steven Price <steven.price@xxxxxxx>
---
arch/arm64/kvm/Kconfig | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/arch/arm64/kvm/Kconfig b/arch/arm64/kvm/Kconfig
index d8b88e40d223..1ffb300e2d92 100644
--- a/arch/arm64/kvm/Kconfig
+++ b/arch/arm64/kvm/Kconfig
@@ -21,6 +21,8 @@ if VIRTUALIZATION
config KVM
bool "Kernel-based Virtual Machine (KVM) support"
depends on OF
+ # for TASKSTATS/TASK_DELAY_ACCT:
+ depends on NET && MULTIUSER
select MMU_NOTIFIER
select PREEMPT_NOTIFIERS
select HAVE_KVM_CPU_RELAX_INTERCEPT
@@ -39,7 +41,7 @@ config KVM
select IRQ_BYPASS_MANAGER
select HAVE_KVM_IRQ_BYPASS
select HAVE_KVM_VCPU_RUN_PID_CHANGE
- select SCHEDSTATS
+ select TASK_DELAY_ACCT
---help---
Support hosting virtualized guest machines.
We don't support KVM with 16K page tables yet, due to the multiple

Same issue as before: you have an implicit config symbol selection.
TASK_DELAY_ACCT depends on TASKSTATS (which is why you have this NET &&
MULTIUSER constraint).

You need to select both TASK_DELAY_ACCT and TASKSTATS, as the comment you
add suggests.

M.
--
Jazz is not dead. It just smells funny...