Received: by 2002:a05:6a10:206:0:0:0:0 with SMTP id 6csp4556705pxj; Tue, 8 Jun 2021 17:56:07 -0700 (PDT) X-Google-Smtp-Source: ABdhPJx67xh1Mu/QB7gKx212liyT01L4V1302Y7PJzE3S/8KpAtoO0q/f2NIWaESrRlyl63Op3kE X-Received: by 2002:a17:906:13cb:: with SMTP id g11mr25687002ejc.169.1623200166893; Tue, 08 Jun 2021 17:56:06 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1623200166; cv=none; d=google.com; s=arc-20160816; b=xSzrk4yZO5rXo0BdWJ7Wr2+mMPiIIJBks0shf7Usxwe5ZgQQ6YaGdjrsmsjs14eP8D NpD9seFOQqDnn8s7DmTzcePjkitzKa8Rr8p+L/SmP7Wdw5rbparhvLiA6EwVkEZWzssk ctEn4I+i5AhUOlAHBEb4DhiI1dz1cLqaOlRcg1u/QtYupKD/VM68df0AaxDyKnyuwW1M by14J6BhEEQCZyxB0+w2Hgzi9hpC13qaddQmEYSfzVYJwaWaJAk6UF3gXZxbfXcPNtAH nynvE2zJyrBW1JTead9Dn+zarObp/2u9t7xRlLCn67oAlJTeuf8DbpQi6L70pzWRHoys XV5Q== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=4wJJ9FNsw5AATwh7w9CMa15d/HT3Nj7QvCS1ul4dU2w=; b=KziL1yHhLbVKVNRxL6iGpS7/oLGl4PBgCQl+k1YrBFPl5CnRa0k/pfd54b5qzSFlHX gl6VB4KLPugsS0+Y+uto5BZ+LKXjKiMZ00w/Kki9m/REHLUH2hQFJGwOGVc1+oty0l/P yJnOLeXtnyq3B2uUrGIRx7V/08Ne/IMus5wu7d3GCy6j3lm3nXfL5YOFKU3fkGCyIbp6 z6QPxa0C1tRLdPEL8k1fDySXpBZ2+v251v+K1yicipPK4rWCepbuJQsVLr1GRFo0ayHV kK7UT3hLiI6P2CSTOMYQ6wnMV6R2rY/zVevcVPDxn688R42m8MIBPkx8TwdkXIrvUm6A bhLQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=jLVDcTPu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id f28si1086622ejj.326.2021.06.08.17.55.43; Tue, 08 Jun 2021 17:56:06 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) client-ip=23.128.96.18; Authentication-Results: mx.google.com; dkim=pass header.i=@kernel.org header.s=k20201202 header.b=jLVDcTPu; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.18 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=NONE dis=NONE) header.from=kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S232054AbhFHMGq (ORCPT + 99 others); Tue, 8 Jun 2021 08:06:46 -0400 Received: from mail.kernel.org ([198.145.29.99]:54690 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S232476AbhFHMGp (ORCPT ); Tue, 8 Jun 2021 08:06:45 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 0197561360; Tue, 8 Jun 2021 12:04:51 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1623153893; bh=uB4SVFjKL8Ntldu4qxsd+Po8QLCTsFR/FDLapR2UJHg=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=jLVDcTPu8X/b9+2ewnDs1ULXq1z3p5+6TaFNwjtTZ4GoyzgkPJE9m1tZpEL3oojEL iug3Ssnc8gMtPy5jo3wP/79yDfoGFO/VDOurxFU4r5xB/j8yVcKmya7HrIfBUksi5P fUzC1qCrCH8qPUgKlY7QDBytmDRZo9xfPwyO6qp3MnnGDBqGSFp+Ov0knbEAhM9KBc oEl8tWyjwFPIiSt5IgnGp2A3cY5Voo19O+o1x7gcmmw6UsNsW3tKou8JS3r8Ta1wqi IFWUe17xRTRKm/9M0XtrLM7mPZTawq2v6Citp2xy1oZ/VonZHpbI3p4pAfxAxpFgBT pYykcRyWq3YCw== From: Frederic Weisbecker To: Peter Zijlstra , Ingo Molnar Cc: LKML , Frederic Weisbecker Subject: [PATCH 2/2] sched: Always print out preempt dynamic state Date: Tue, 8 Jun 2021 14:04:42 +0200 Message-Id: <20210608120442.93587-3-frederic@kernel.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210608120442.93587-1-frederic@kernel.org> References: <20210608120442.93587-1-frederic@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Previously the preempt dynamic mode wasn't printed out if it wasn't overriden with the "preempt=" boot option. But now that the default preempt dynamic behaviour can be selected at Kconfig time, we can't assume anymore that preempt=full is the default. The only way to retrieve that information is to browse the kernel config file. Better print it out unconditionally then. Signed-off-by: Frederic Weisbecker --- kernel/sched/core.c | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index df47a8275c37..6b883adad8f7 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -6262,6 +6262,21 @@ int sched_dynamic_mode(const char *str) void sched_dynamic_update(int mode) { + switch (mode) { + case preempt_dynamic_none: + pr_info("Dynamic Preempt: none\n"); + break; + case preempt_dynamic_voluntary: + pr_info("Dynamic Preempt: voluntary\n"); + break; + case preempt_dynamic_full: + pr_info("Dynamic Preempt: full\n"); + break; + default: + pr_info("Dynamic Preempt: incorrect\n"); + return; + } + if (preempt_dynamic_mode == mode) return; @@ -6282,7 +6297,6 @@ void sched_dynamic_update(int mode) static_call_update(preempt_schedule, NULL); static_call_update(preempt_schedule_notrace, NULL); static_call_update(irqentry_exit_cond_resched, NULL); - pr_info("Dynamic Preempt: none\n"); break; case preempt_dynamic_voluntary: @@ -6291,7 +6305,6 @@ void sched_dynamic_update(int mode) static_call_update(preempt_schedule, NULL); static_call_update(preempt_schedule_notrace, NULL); static_call_update(irqentry_exit_cond_resched, NULL); - pr_info("Dynamic Preempt: voluntary\n"); break; case preempt_dynamic_full: @@ -6300,7 +6313,6 @@ void sched_dynamic_update(int mode) static_call_update(preempt_schedule, __preempt_schedule_func); static_call_update(preempt_schedule_notrace, __preempt_schedule_notrace_func); static_call_update(irqentry_exit_cond_resched, irqentry_exit_cond_resched); - pr_info("Dynamic Preempt: full\n"); break; } @@ -6323,8 +6335,7 @@ __setup("preempt=", setup_preempt_mode); static void __init init_preempt(void) { - if (preempt_dynamic_mode_init != preempt_dynamic_full) - sched_dynamic_update(preempt_dynamic_mode_init); + sched_dynamic_update(preempt_dynamic_mode_init); } #else static inline void init_preempt(void) { } -- 2.25.1