Received: by 2002:a05:6a10:f3d0:0:0:0:0 with SMTP id a16csp1343772pxv; Fri, 2 Jul 2021 01:09:18 -0700 (PDT) X-Google-Smtp-Source: ABdhPJxj/TEctTYM9ssBiVGVl7kMfBEmV0bcj99/uiJy2JsVGnClg6frLgeOgvyvBVl9bW0PIuF8 X-Received: by 2002:a92:cda5:: with SMTP id g5mr699114ild.117.1625213358122; Fri, 02 Jul 2021 01:09:18 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1625213358; cv=none; d=google.com; s=arc-20160816; b=e233N8Yab+L3M+I6/wYXA4Afoz88JNx1Qe4x7wFnzGOJFMpVAFf0yIYMfmnEm1qQn0 Rnm4Rxr2E6syeq2FH4lAXfObvpgD6NN9TwILXfXeZ41I3tpCcI3zwyxk6UznH0VZfxNW FZGO1apMorTaUxFI4NAiHdyskDS1DIrBjr4LcD92lI6v03kt1vARgeAaBJi8IZg6mnsn 90uIkiu2X1hosj8/bsBslRAXz6poUJA96jjUvgbhiLJzsqjOyHumox0NAt8bCTMlniJ7 yZmz0hxWw0qFqmO2UME9wvt7PvfcKQFjqfL3HQsHokglRZlq3pHniCOiX9N+fMUGK+Ep N29w== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:cc:to:subject :message-id:date:from:in-reply-to:references:mime-version :dkim-signature; bh=yN1JzFQU4unToYWY8NK5C5gYLDQEtwyJk7jPmsLsEp8=; b=QK68fTfH3bkMh0tDlyWfXfOVe1dtqkKhOVb+YVYhJzNbhAbp8f4DpxkK3QQvOoh5uf 0axb8apdaJ/7CzSRzhR8nQ7E6LulCcfOpbZP242j40yOG+Mh62Bc6JQ8cENEJLZ7vLWy vkwcK7W4Pj6YiVHSGF9E0N7UYauXE1Cy9GBbvuABa+Wb4EIqAB1QwuTz6IWhpO+rz3Hg jb04VEEY1upoc7GlOeOf97ST18oI59g16BdZXOTo9qY0+DzaaPogqnN5OTQgh06VpLJV AXku/P/BGYrMgjOksLz6DcGIqSGP8E84YIuIl1jjjsUa7ZUKbcSxkqI0omfYY/VDSd2Y UCHg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@linaro.org header.s=google header.b="D/LeWMQt"; 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=linaro.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id e16si2926812iom.90.2021.07.02.01.09.05; Fri, 02 Jul 2021 01:09:18 -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=@linaro.org header.s=google header.b="D/LeWMQt"; 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=linaro.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S230144AbhGBIKy (ORCPT + 99 others); Fri, 2 Jul 2021 04:10:54 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:40980 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S229519AbhGBIKy (ORCPT ); Fri, 2 Jul 2021 04:10:54 -0400 Received: from mail-lf1-x129.google.com (mail-lf1-x129.google.com [IPv6:2a00:1450:4864:20::129]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 782D1C061762 for ; Fri, 2 Jul 2021 01:08:22 -0700 (PDT) Received: by mail-lf1-x129.google.com with SMTP id q18so16596735lfc.7 for ; Fri, 02 Jul 2021 01:08:22 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc:content-transfer-encoding; bh=yN1JzFQU4unToYWY8NK5C5gYLDQEtwyJk7jPmsLsEp8=; b=D/LeWMQtjBYgH73i/c8YhbQLtaFWbn6Z9DeQsu7X/Iyt5mFnbYD5jKv8R0uaA3wY5s UmnAMJcgQau4mJJbCJp70hJF3DC1pUGESSBOFYm/mAAoJnpulmYi/9i0dc2sgHOnOIGc NcAd1YA7BVoUbGb3/JTK3CPgMXeLetQinKHBWa+ykHge6O2rnAat251W/TugdmgT4lvE BYBjpBKZK7xjt5+ICdZlWalexVDIlB8S1iyba/ELv4j4qVG92/3F5TSxjcu0TrSzqG+T n/OcZ5R6mvLbGEIaEkyFB5Io9qH91zoxA5BkyNxSu463lz2y/CTZMpyMhLy5+ADI8Oxd 47yA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc:content-transfer-encoding; bh=yN1JzFQU4unToYWY8NK5C5gYLDQEtwyJk7jPmsLsEp8=; b=W9nxWoB86/uSyo+kniG0TRja3UiunoznzqotbFkr9tfu6EKRaEwJIRk933S9gPXNjc qFPJGGrW0bbtn4P45nOFJtC9VNeLgiMNntRYuEu4USwumwUVdz5NAc1WyMmsvx1M8ctY +qFEuIWx85CYZ0kWq1+HybpHqeuAAX/RX7YVcRJM516EpP/kkLygXxV3Zbbcfh//E6Al OaWMu+SpYYwdZS6tx1IAkX+w5pIxjgOd4HO51HN3Cvf3TLPsoxi2yghnlCdc8yafc0tJ LPqFcOnIhN5uxgVKPPutj1WuGEOYw/9TxUq0vOxu2LC6iMERy6Ss1kbZcO12Z0tUWEd5 R5aA== X-Gm-Message-State: AOAM5338qB5y+i1d7bGC+npemrreLNGPu/tYlschVTx7GYGPoF6r26eq PMZtUrQfvCttJOCJumU8xV6s5F3w79hsERgem2H2Yw== X-Received: by 2002:a05:6512:3d1d:: with SMTP id d29mr3004059lfv.286.1625213300604; Fri, 02 Jul 2021 01:08:20 -0700 (PDT) MIME-Version: 1.0 References: <20210701171837.32156-1-vincent.guittot@linaro.org> In-Reply-To: From: Vincent Guittot Date: Fri, 2 Jul 2021 10:08:09 +0200 Message-ID: Subject: Re: [PATCH] sched/fair: Sync load_sum with load_avg after dequeue To: Sachin Sant Cc: Ingo Molnar , Peter Zijlstra , Juri Lelli , Dietmar Eggemann , Steven Rostedt , Ben Segall , Mel Gorman , Daniel Bristot de Oliveira , linux-kernel , Odin Ugedal Content-Type: text/plain; charset="UTF-8" Content-Transfer-Encoding: quoted-printable Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Fri, 2 Jul 2021 at 08:16, Sachin Sant wrote= : > > > > > On 01-Jul-2021, at 10:48 PM, Vincent Guittot wrote: > > > > commit 9e077b52d86a ("sched/pelt: Check that *_avg are null when *_sum = are") > > reported some inconsitencies between *_avg and *_sum. > > > > commit 1c35b07e6d39 ("sched/fair: Ensure _sum and _avg values stay cons= istent") > > fixed some but one remains when dequeuing load. > > > > sync the cfs's load_sum with its load_avg after dequeuing the load of a > > sched_entity. > > > > Fixes: 9e077b52d86a ("sched/pelt: Check that *_avg are null when *_sum = are") > > Reported-by: Sachin Sant > > Signed-off-by: Vincent Guittot > > --- > > > > I have been able to trigger a WARN on my system even with the patch > > listed above. This patch fixes it. > > Sachin could you test that it also fixes yours ? > > > > I ran various LTP stress tests, scheduler tests and kernel compile operat= ion for about 5 hours. > Haven=E2=80=99t seen the warning during the testing. > > Tested-by: Sachin Sant Thanks > > I have left the tests running, will let it run for few more hours. > > Thanks > -Sachin > > > kernel/sched/fair.c | 3 ++- > > 1 file changed, 2 insertions(+), 1 deletion(-) > > > > diff --git a/kernel/sched/fair.c b/kernel/sched/fair.c > > index 11d22943753f..48fc7dfc2f66 100644 > > --- a/kernel/sched/fair.c > > +++ b/kernel/sched/fair.c > > @@ -3037,8 +3037,9 @@ enqueue_load_avg(struct cfs_rq *cfs_rq, struct sc= hed_entity *se) > > static inline void > > dequeue_load_avg(struct cfs_rq *cfs_rq, struct sched_entity *se) > > { > > + u32 divider =3D get_pelt_divider(&se->avg); > > sub_positive(&cfs_rq->avg.load_avg, se->avg.load_avg); > > - sub_positive(&cfs_rq->avg.load_sum, se_weight(se) * se->avg.load_= sum); > > + cfs_rq->avg.load_sum =3D cfs_rq->avg.load_avg * divider; > > } > > #else > > static inline void > > -- > > 2.17.1 > > >