Message ID | 1646377603-19730-24-git-send-email-byungchul.park@lge.com (mailing list archive) |
---|---|
State | New |
Headers | show
Return-Path: <owner-linux-mm@kvack.org> X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id BE756C433EF for <linux-mm@archiver.kernel.org>; Fri, 4 Mar 2022 07:07:48 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D521B8D0013; Fri, 4 Mar 2022 02:07:14 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 535928D0014; Fri, 4 Mar 2022 02:07:14 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 926628D0009; Fri, 4 Mar 2022 02:07:13 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0058.hostedemail.com [216.40.44.58]) by kanga.kvack.org (Postfix) with ESMTP id 0C9198D0009 for <linux-mm@kvack.org>; Fri, 4 Mar 2022 02:07:12 -0500 (EST) Received: from smtpin27.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay03.hostedemail.com (Postfix) with ESMTP id C0AAC8249980 for <linux-mm@kvack.org>; Fri, 4 Mar 2022 07:07:11 +0000 (UTC) X-FDA: 79205822262.27.4A47BF9 Received: from lgeamrelo11.lge.com (lgeamrelo12.lge.com [156.147.23.52]) by imf20.hostedemail.com (Postfix) with ESMTP id B5A461C000D for <linux-mm@kvack.org>; Fri, 4 Mar 2022 07:07:10 +0000 (UTC) Received: from unknown (HELO lgemrelse6q.lge.com) (156.147.1.121) by 156.147.23.52 with ESMTP; 4 Mar 2022 16:07:09 +0900 X-Original-SENDERIP: 156.147.1.121 X-Original-MAILFROM: byungchul.park@lge.com Received: from unknown (HELO localhost.localdomain) (10.177.244.38) by 156.147.1.121 with ESMTP; 4 Mar 2022 16:07:09 +0900 X-Original-SENDERIP: 10.177.244.38 X-Original-MAILFROM: byungchul.park@lge.com From: Byungchul Park <byungchul.park@lge.com> To: torvalds@linux-foundation.org Cc: damien.lemoal@opensource.wdc.com, linux-ide@vger.kernel.org, adilger.kernel@dilger.ca, linux-ext4@vger.kernel.org, mingo@redhat.com, linux-kernel@vger.kernel.org, peterz@infradead.org, will@kernel.org, tglx@linutronix.de, rostedt@goodmis.org, joel@joelfernandes.org, sashal@kernel.org, daniel.vetter@ffwll.ch, chris@chris-wilson.co.uk, duyuyang@gmail.com, johannes.berg@intel.com, tj@kernel.org, tytso@mit.edu, willy@infradead.org, david@fromorbit.com, amir73il@gmail.com, bfields@fieldses.org, gregkh@linuxfoundation.org, kernel-team@lge.com, linux-mm@kvack.org, akpm@linux-foundation.org, mhocko@kernel.org, minchan@kernel.org, hannes@cmpxchg.org, vdavydov.dev@gmail.com, sj@kernel.org, jglisse@redhat.com, dennis@kernel.org, cl@linux.com, penberg@kernel.org, rientjes@google.com, vbabka@suse.cz, ngupta@vflare.org, linux-block@vger.kernel.org, paolo.valente@linaro.org, josef@toxicpanda.com, linux-fsdevel@vger.kernel.org, viro@zeniv.linux.org.uk, jack@suse.cz, jack@suse.com, jlayton@kernel.org, dan.j.williams@intel.com, hch@infradead.org, djwong@kernel.org, dri-devel@lists.freedesktop.org, airlied@linux.ie, rodrigosiqueiramelo@gmail.com, melissa.srw@gmail.com, hamohammed.sa@gmail.com Subject: [PATCH v4 23/24] dept: Let it work with real sleeps in __schedule() Date: Fri, 4 Mar 2022 16:06:42 +0900 Message-Id: <1646377603-19730-24-git-send-email-byungchul.park@lge.com> X-Mailer: git-send-email 1.9.1 In-Reply-To: <1646377603-19730-1-git-send-email-byungchul.park@lge.com> References: <1646377603-19730-1-git-send-email-byungchul.park@lge.com> X-Rspamd-Server: rspam11 X-Rspamd-Queue-Id: B5A461C000D X-Rspam-User: Authentication-Results: imf20.hostedemail.com; dkim=none; dmarc=none; spf=pass (imf20.hostedemail.com: domain of byungchul.park@lge.com designates 156.147.23.52 as permitted sender) smtp.mailfrom=byungchul.park@lge.com X-Stat-Signature: oh7hc89okf8n387ydqtd73neof9gmwp8 X-HE-Tag: 1646377630-159187 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: <linux-mm.kvack.org> |
Series |
DEPT(Dependency Tracker)
|
expand
|
diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 6a422aa..2ec7cf8 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -6192,7 +6192,12 @@ static void __sched notrace __schedule(unsigned int sched_mode) local_irq_disable(); rcu_note_context_switch(!!sched_mode); - if (sched_mode == SM_NONE) + /* + * Skip the commit if the current task does not actually go to + * sleep. + */ + if (READ_ONCE(prev->__state) & TASK_NORMAL && + sched_mode == SM_NONE) dept_ask_event_wait_commit(_RET_IP_); /*
Dept commits the staged wait in __schedule() even if the corresponding wake_up() has already woken up the task. Which means Dept considers the case as a sleep. This would help Dept work for stronger detection but also leads false positives. It'd be better to let Dept work only with real sleeps conservatively for now. So did it. Signed-off-by: Byungchul Park <byungchul.park@lge.com> --- kernel/sched/core.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-)