Received: by 2002:ac2:464d:0:0:0:0:0 with SMTP id s13csp3289892lfo; Mon, 23 May 2022 00:49:45 -0700 (PDT) X-Google-Smtp-Source: ABdhPJzJE3teI1IrmXnhAODlrfcMeGlUHK80gGTR25275y+F5SCipkBlqEk4L4UQ0a4sDj2CXTT6 X-Received: by 2002:a17:90b:3688:b0:1df:1d55:507f with SMTP id mj8-20020a17090b368800b001df1d55507fmr25407023pjb.169.1653292185575; Mon, 23 May 2022 00:49:45 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1653292185; cv=none; d=google.com; s=arc-20160816; b=Dcl2JPRSNR15q8kQ8gzjiLRouFtgCymoxQBD4OCKhTQ26v6+WopHGkW2al532B9FzO /S4t8LkIQngZBRv6oWDxGHHZi7kqNZkZT0lJM+ORySy+JaizVV00w2oqcH4nBiIVKfqU Pkn/ixfRVJRUDMZQK2vZlWA1987sxDqW5j7FZGTQZviEcalEm2XcBBO3YfAdmpzZV0E1 2PeIs60HLjHGTiZ18cD/pUY7eTDmL/MTMoyypBtNZR/OtBS/CXe5XHlm/NpaahB6z62g f0XnJyamwjTaYUCWSMAsH98U3omqJeMVOnpOgIg8sgOjITtUL+DYhTi1i90wYAH8OB6R PlyA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=2jbdxCX0746y1clUp3qUeAGat6RVN++2ggug8b6xgpo=; b=f0lPsgnxZvVDw7WP/8NK2guDIPpNJ1qINLE9qDzksG4TTKSJHQx6FZly3yYd7LCq1X 4qP/UToRomwa5M16SfCZxxTvTj1Z4hM7NNUrWFKOfCQWsSstAAp7rUKEwzoh0Fwhnf7u nrmN7sTeG1eAuU7AJZnIdeL/uHorgG/vA5VAly0/BGSF2yjqBojR3WhwhGBqfTSmJ/4a f6OrY+aqJzLW1Wr7vseNeqHuSf1KCD4LD1mP62mPfSvMqLkCqTiTCb5NLz0JFZPq/Qy0 5bnc+a3a/rRGki/MG2bzbON934LBVquyUTy/fhX5WW0q6fonwZz37v1KuA+KAyAy25cS tT6w== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@infradead.org header.s=desiato.20200630 header.b=FjWAeykj; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from lindbergh.monkeyblade.net (lindbergh.monkeyblade.net. [23.128.96.19]) by mx.google.com with ESMTPS id y6-20020a17090322c600b0015838a4fd9dsi10714844plg.64.2022.05.23.00.49.45 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 23 May 2022 00:49:45 -0700 (PDT) Received-SPF: softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) client-ip=23.128.96.19; Authentication-Results: mx.google.com; dkim=pass header.i=@infradead.org header.s=desiato.20200630 header.b=FjWAeykj; spf=softfail (google.com: domain of transitioning linux-kernel-owner@vger.kernel.org does not designate 23.128.96.19 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by lindbergh.monkeyblade.net (Postfix) with ESMTP id 1C46321604A; Sun, 22 May 2022 23:54:02 -0700 (PDT) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S238744AbiEUKBO (ORCPT + 99 others); Sat, 21 May 2022 06:01:14 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:50778 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229808AbiEUKBM (ORCPT ); Sat, 21 May 2022 06:01:12 -0400 Received: from desiato.infradead.org (desiato.infradead.org [IPv6:2001:8b0:10b:1:d65d:64ff:fe57:4e05]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 808731402E for ; Sat, 21 May 2022 03:01:09 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=desiato.20200630; h=In-Reply-To:Content-Type:MIME-Version: References:Message-ID:Subject:Cc:To:From:Date:Sender:Reply-To: Content-Transfer-Encoding:Content-ID:Content-Description; bh=2jbdxCX0746y1clUp3qUeAGat6RVN++2ggug8b6xgpo=; b=FjWAeykjVzYskWAxEpeAwELQeH lfkK/jeXjyMEuJIU2l6oKQqvFLHcgiu0fKrVFHNi8TWp+SepfhKWl0JZCTgXChwiD64HDDOUnoqB8 RG5e7d6O8rjpDZeOPfH70A50RZWTaF2HFxP2+8nUL9LeuaE3O35tAYEYKl0DbRQIEX4ES/ZVjAfyZ RDVdbUL/q7oPeCfzBZ49buULRSRLeLRZVZwKJWi2N0ZgCTckarcSIA465AgxBYmlkK26wmcoxgzEY BMM4rNs5v7PjsT1fZZRhKA1i3wrNiRD5znAPy4DKnY5WazV/WVXkcYuMUKp/yIuKKU+uImoRCXc05 u/5/R0HA==; Received: from j217100.upc-j.chello.nl ([24.132.217.100] helo=worktop.programming.kicks-ass.net) by desiato.infradead.org with esmtpsa (Exim 4.94.2 #2 (Red Hat Linux)) id 1nsLua-000CIo-3N; Sat, 21 May 2022 10:00:40 +0000 Received: by worktop.programming.kicks-ass.net (Postfix, from userid 1000) id 7BA3F980E99; Sat, 21 May 2022 12:00:37 +0200 (CEST) Date: Sat, 21 May 2022 12:00:37 +0200 From: Peter Zijlstra To: Josh Don Cc: Ingo Molnar , Juri Lelli , Vincent Guittot , Tejun Heo , Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , Valentin Schneider , linux-kernel@vger.kernel.org, Cruz Zhao Subject: Re: [PATCH v2] sched/core: add forced idle accounting for cgroups Message-ID: <20220521100037.GA2578@worktop.programming.kicks-ass.net> References: <20220520235138.3140590-1-joshdon@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20220520235138.3140590-1-joshdon@google.com> X-Spam-Status: No, score=-2.0 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS, MAILING_LIST_MULTI,RDNS_NONE,SPF_HELO_NONE,T_SCC_BODY_TEXT_LINE autolearn=no autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, May 20, 2022 at 04:51:38PM -0700, Josh Don wrote: > diff --git a/kernel/sched/core_sched.c b/kernel/sched/core_sched.c > index 38a2cec21014..ddef2b8ddf68 100644 > --- a/kernel/sched/core_sched.c > +++ b/kernel/sched/core_sched.c > @@ -277,7 +277,11 @@ void __sched_core_account_forceidle(struct rq *rq) > if (p == rq_i->idle) > continue; > > - __schedstat_add(p->stats.core_forceidle_sum, delta); > + /* > + * Note: this will account forceidle to the current cpu, even > + * if it comes from our SMT sibling. > + */ > + account_forceidle_time(p, delta); > } AFAICT this is the only caller of that function. > } > > diff --git a/kernel/sched/cputime.c b/kernel/sched/cputime.c > index 78a233d43757..598d1026d629 100644 > --- a/kernel/sched/cputime.c > +++ b/kernel/sched/cputime.c > @@ -226,6 +226,17 @@ void account_idle_time(u64 cputime) > cpustat[CPUTIME_IDLE] += cputime; > } > > + > +#ifdef CONFIG_SCHED_CORE > +/* Account for forceidle time due to core scheduling. */ > +void account_forceidle_time(struct task_struct *p, u64 delta) > +{ > + schedstat_add(p->stats.core_forceidle_sum, delta); But then you loose the __, why? > + > + task_group_account_field(p, CPUTIME_FORCEIDLE, delta); > +} > +#endif