From patchwork Tue Oct 10 03:20:44 2023 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yang Yang X-Patchwork-Id: 150454 Return-Path: Delivered-To: ouuuleilei@gmail.com Received: by 2002:a59:a888:0:b0:403:3b70:6f57 with SMTP id x8csp2251621vqo; Mon, 9 Oct 2023 20:21:38 -0700 (PDT) X-Google-Smtp-Source: AGHT+IEj1rLG59X7iGRlmVnfGhCb8ooOA7M2nfsvy/IfiaV7qbXfROngsg6vX1BliyD4QsxrMOUk X-Received: by 2002:a05:6a20:4306:b0:13e:debc:3657 with SMTP id h6-20020a056a20430600b0013edebc3657mr18512662pzk.30.1696908097683; Mon, 09 Oct 2023 20:21:37 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1696908097; cv=none; d=google.com; s=arc-20160816; b=dhfak5oPo5sabKjaelMKv4OwOVTbe5yoplN3YhENE1m3w6oWHHgwi5QW/mc0Zh33BH R3cmNWo0x4VMjS4dfMS3avXNQhGk2hHMRj+Ra7KsK2EtgGyxboeoV7ewk1TXYzaG+QaO LehnPtmItAIX31TTFA8jpX7F2DWJHef3gTPb+MRdUEK74JuIZjcF+m3vULbEuATUhDV1 DIvlExQhIrg7QcGd7Dwsf3fsmVjS65Hrv6TCgoE/jwp1lXTnryikgtPu/Df+l7QVosTT qqy1f7rSb7V+wRlNXg+32UXo95iZwuc87M+fxqhYSjCyEZsAjbrVju+PBjnUYK8C7GC2 AFZA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:subject:cc:to:from:mime-version:references :in-reply-to:message-id:date; bh=C9soboPZztxMFrRpP/VQa+llx8vobbdO1Cup+Ab5Uo8=; fh=P+rGFuRL1sCVMGcWZBsJKK/wdrRW+WoZNRHB2OIX/Q4=; b=KcG4qRGvJyUNaNhArkw8AtRoUwx+P3BstCGxVxXZyrNAw9E+/eAE1d7l9IHv8DIK15 3YTi608hmxhGAbyLtWehGm24kE6lHO31Kr+Qhp0Y/mLogBIEVac9QPUkbGDX3E2dgneI q/YwcAQ0IKps1/TnLfh0zVqz82Z8g8g5+eJsPB/r/LumKvnxpfUzyWbet0NPZlI//WOv EaV5C7orT3jTp5nR32c3T4qmxmZ3/5phQ4npudsJSCTMRJIvYbhCoZ9GQPB3LKtwx2v0 s+tOwPgxwDuwHtt07d3fKBX6/YYT7YMlg0jhaTDBlyB0HLZRioyUWFqmivq5q2MEm/vv tM5w== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:8 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=zte.com.cn Received: from fry.vger.email (fry.vger.email. [2620:137:e000::3:8]) by mx.google.com with ESMTPS id t8-20020a6564c8000000b00578d6a88716si10436375pgv.3.2023.10.09.20.21.37 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 09 Oct 2023 20:21:37 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:8 as permitted sender) client-ip=2620:137:e000::3:8; Authentication-Results: mx.google.com; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::3:8 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=zte.com.cn Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by fry.vger.email (Postfix) with ESMTP id 49C588263E8A; Mon, 9 Oct 2023 20:21:33 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at fry.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1441903AbjJJDVC (ORCPT + 20 others); Mon, 9 Oct 2023 23:21:02 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:39364 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1378482AbjJJDVA (ORCPT ); Mon, 9 Oct 2023 23:21:00 -0400 Received: from mxhk.zte.com.cn (mxhk.zte.com.cn [63.216.63.40]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id F35C1A6 for ; Mon, 9 Oct 2023 20:20:58 -0700 (PDT) Received: from mse-fl2.zte.com.cn (unknown [10.5.228.133]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mxhk.zte.com.cn (FangMail) with ESMTPS id 4S4LlC0mGWz8XrRQ; Tue, 10 Oct 2023 11:20:55 +0800 (CST) Received: from szxlzmapp05.zte.com.cn ([10.5.230.85]) by mse-fl2.zte.com.cn with SMTP id 39A3Khen070641; Tue, 10 Oct 2023 11:20:43 +0800 (+08) (envelope-from yang.yang29@zte.com.cn) Received: from mapi (szxlzmapp06[null]) by mapi (Zmail) with MAPI id mid14; Tue, 10 Oct 2023 11:20:44 +0800 (CST) Date: Tue, 10 Oct 2023 11:20:44 +0800 (CST) X-Zmail-TransId: 2b086524c30cffffffffe81-35b9a X-Mailer: Zmail v1.0 Message-ID: <202310101120445530640@zte.com.cn> In-Reply-To: References: ZSPayGSz6HQBp+3W@gmail.com,202310092030430136422@zte.com.cn,ZSP3cuEsgwWcIKRw@gmail.com,CAJuCfpFabCn8gcuLV322RKC=xzVm0C+64HQP+CkFNJZ4VO42ZA@mail.gmail.com Mime-Version: 1.0 From: To: , , , Cc: , , , , Subject: =?utf-8?q?=5BPATCH_linux-next_v2_2/4=5D_sched/psi=3A_Avoid_update_t?= =?utf-8?q?riggers_and_rtpoll=5Ftotal_when_it_is?= =?utf-8?q?_unnecessary?= X-MAIL: mse-fl2.zte.com.cn 39A3Khen070641 X-Fangmail-Gw-Spam-Type: 0 X-Fangmail-Anti-Spam-Filtered: true X-Fangmail-MID-QID: 6524C317.000/4S4LlC0mGWz8XrRQ X-Spam-Status: No, score=2.8 required=5.0 tests=HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RCVD_IN_SBL_CSS,SPF_HELO_NONE,SPF_PASS, UNPARSEABLE_RELAY autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on fry.vger.email Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (fry.vger.email [0.0.0.0]); Mon, 09 Oct 2023 20:21:33 -0700 (PDT) X-Spam-Level: ** X-getmail-retrieved-from-mailbox: INBOX X-GMAIL-THRID: 1778156291723326049 X-GMAIL-MSGID: 1779337105783932685 From: Yang Yang When psimon wakes up and there are no state changes for rtpoll_states, it's unnecessary to update triggers and rtpoll_total because the pressures being monitored by user had not changed. This will help to slightly reduce unnecessary computations of psi. Signed-off-by: Yang Yang Cc: Zhang Yunkai Cc: Ran Xiaokai --- kernel/sched/psi.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/kernel/sched/psi.c b/kernel/sched/psi.c index fec8aab096a8..143f8eb34f9d 100644 --- a/kernel/sched/psi.c +++ b/kernel/sched/psi.c @@ -705,10 +705,11 @@ static void psi_rtpoll_work(struct psi_group *group) if (now >= group->rtpoll_next_update) { group->rtpoll_next_update = now + group->rtpoll_min_period; - update_triggers(group, now, &update_total, PSI_POLL); - if (update_total) + if (changed_states & group->rtpoll_states) { + update_triggers(group, now, &update_total, PSI_POLL); memcpy(group->rtpoll_total, group->total[PSI_POLL], sizeof(group->rtpoll_total)); + } } psi_schedule_rtpoll_work(group,