Received: by 2002:a05:6358:3188:b0:123:57c1:9b43 with SMTP id q8csp6293394rwd; Mon, 19 Jun 2023 05:25:10 -0700 (PDT) X-Google-Smtp-Source: ACHHUZ7oOT3B9tp+byKQuftdKkKs04kHosIk8QiXSKj+z4wzTi66Lr+dQ86BHFRFke/7Aez6vFO3 X-Received: by 2002:a17:90b:3687:b0:25e:aeaa:521d with SMTP id mj7-20020a17090b368700b0025eaeaa521dmr7170394pjb.15.1687177510343; Mon, 19 Jun 2023 05:25:10 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1687177510; cv=none; d=google.com; s=arc-20160816; b=fuO1y3B1MR8RbNlGXQQThvm1nl3gj3uRCPxeDY3OlG21gCRpleJadhhq4AACSjYgOf SyNKzM12oR9iSCMCVdFZDPGHwqvotjG7eISE8Kfw/V1M9pB4uiwDgXvkfOU51GiKz80q TUtEZOBQZggLoNr5oUOmLHin6FLXaivDaYbvLREZVLcpJ0uSkm48oQ07gmiJQQHOoaMA oCORCZ/IeX22PfGCn/eYHkVLbihhIQBzTZB+1H1IUBCL8YdMi/gm1w9NAD1ALraUBK3I dreOTbZ7Xow7Lu+pxQT5Gfg77zJRr2tjrLkyqBYBbPEA++WmoGE3xTVJccUZNUQFjR07 9ryQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:in-reply-to:from :references:cc:to:subject:user-agent:mime-version:date:message-id :dkim-signature; bh=891wrm9M9PHwifTQT0DHdUPvqqOrY7jEVcZy1G14/Zs=; b=uW6NrxSeMjEazW8Jr4iZl4HiIEzW1rmf1/XvmpE9IDgFiMMVT3FXxbmcDk2OFbqNEy rycRVFiy4lKM+hVBPZub/H/FsXJ701ouhSuiP6fVgZFCNdBiGiBwJdf2UretPZZGhhOe TX5iE7EB2klOG5GGQhNVxLUjIDIiR6Ct05KVwOqohCYOFvNy6FBMLP3hScnuNcrTB2NA f9FcLqg5OdyCGci9q85L8hNi3Q0vyzNv0iN5x4e/G8xv4XAzhGufEWWAC1BWT7aWuId9 3ReQo5m8X1Yzjs+llPeR0qkXLtSH6RK92ZGlvQ/gnFTXpqMmW4/6PYypPhbVTZMnhTmn tOxA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bytedance.com header.s=google header.b=i6pWJdQ8; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=bytedance.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id mv12-20020a17090b198c00b0025c28982ad8si7232729pjb.182.2023.06.19.05.24.56; Mon, 19 Jun 2023 05:25:10 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@bytedance.com header.s=google header.b=i6pWJdQ8; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=QUARANTINE sp=QUARANTINE dis=NONE) header.from=bytedance.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S229683AbjFSMSR (ORCPT + 99 others); Mon, 19 Jun 2023 08:18:17 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:43122 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S230371AbjFSMSN (ORCPT ); Mon, 19 Jun 2023 08:18:13 -0400 Received: from mail-ot1-x332.google.com (mail-ot1-x332.google.com [IPv6:2607:f8b0:4864:20::332]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 604B3E68 for ; Mon, 19 Jun 2023 05:18:12 -0700 (PDT) Received: by mail-ot1-x332.google.com with SMTP id 46e09a7af769-6b58351327eso582965a34.1 for ; Mon, 19 Jun 2023 05:18:12 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1687177091; x=1689769091; h=content-transfer-encoding:in-reply-to:from:references:cc:to:subject :user-agent:mime-version:date:message-id:from:to:cc:subject:date :message-id:reply-to; bh=891wrm9M9PHwifTQT0DHdUPvqqOrY7jEVcZy1G14/Zs=; b=i6pWJdQ8p9TeXOdxPvcqbbh3Iv1t+UQQMFkxZrRq6hPmmXwz5xaRXrk+LjVn9u1LXg nYPMUF7ugs9T9xXAf11zTMdIOdLDSibQTvv5npFCVHvKG1kyGg23Nc6NttxMiIIHBF0P IH8RvDDV+PCFhyW82QM3F+m6mFX0nK1l/HKIU47c8//0LUjQOmKpqjs1BTQAxRG3t6pj DOYxBtQbiq0URkxuf/osy+GV4enbt/mPLd0IGUDvmInvUBANKdezmgk0loyzUpBM7mM1 O+w977Bz5S4F/1x5HRxKILZ7gABF8Y8+S9p8/rdB7yJQ2U+m7zisEEMqi2UIuWI+E0W9 p9dA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1687177091; x=1689769091; h=content-transfer-encoding:in-reply-to:from:references:cc:to:subject :user-agent:mime-version:date:message-id:x-gm-message-state:from:to :cc:subject:date:message-id:reply-to; bh=891wrm9M9PHwifTQT0DHdUPvqqOrY7jEVcZy1G14/Zs=; b=MmK23ziTbo46jxFACt1JT2Ycf3HpLCJgVmDELCfGQmSH4xTdnASF79JztlPZTeDeaJ luAvKjDWhCnezDggKOqVKUDDOcjaDenUPl2TKy2jVactuApkzCQnIm3tdWfDurSrKYUp m34ei7zIQuOAbxtiAISRAhQcHa1AFlAG59UHWVGqrqnZkbBO5HroXNzt9CQVnsJMJPIL 858zUFGiV6ZeQZ4gbMJofTdIA4AtF4hUWO4PxH+5NOCbH7N38JjxqFA9nut7Ld+Jxx8s JrHRsZIbmAqr/lvNiyb4tN6pJdxR5vfiM7YDXDtStoqLgmVF/Wmy2jqXUCvHIvNiagxx Q4Lg== X-Gm-Message-State: AC+VfDyXfI6AThFT6hQ4nV+qGF62bmScU+6zJIxTeAUFeN0KHRXxBc+c G6zmQJHY1zyRNUMlEeQMpJMr2w== X-Received: by 2002:a05:6359:a26:b0:12c:9960:ec1e with SMTP id el38-20020a0563590a2600b0012c9960ec1emr3550251rwb.19.1687177091220; Mon, 19 Jun 2023 05:18:11 -0700 (PDT) Received: from [10.85.115.102] ([203.208.167.146]) by smtp.gmail.com with ESMTPSA id i19-20020aa78d93000000b0064d45eea573sm16385459pfr.41.2023.06.19.05.18.09 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 19 Jun 2023 05:18:10 -0700 (PDT) Message-ID: <56ef1ccc-f707-b121-76fb-f2096e75a01a@bytedance.com> Date: Mon, 19 Jun 2023 20:18:06 +0800 MIME-Version: 1.0 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:102.0) Gecko/20100101 Thunderbird/102.8.0 Subject: Re: [External] [tip: sched/core] sched/core: Avoid double calling update_rq_clock() in __balance_push_cpu_stop() To: "Peter Zijlstra (Intel)" Cc: linux-kernel@vger.kernel.org References: <20230613082012.49615-3-jiahao.os@bytedance.com> <168717269089.404.10438864985621759181.tip-bot2@tip-bot2> From: Hao Jia In-Reply-To: <168717269089.404.10438864985621759181.tip-bot2@tip-bot2> Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-2.2 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,NICE_REPLY_A,RCVD_IN_DNSWL_NONE, SPF_HELO_NONE,SPF_PASS,T_SCC_BODY_TEXT_LINE autolearn=ham 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 2023/6/19 tip-bot2 for Hao Jia wrote: > The following commit has been merged into the sched/core branch of tip: > > Commit-ID: 96500560f0c73c71bca1b27536c6254fa0e8ce37 > Gitweb: https://git.kernel.org/tip/96500560f0c73c71bca1b27536c6254fa0e8ce37 > Author: Hao Jia > AuthorDate: Tue, 13 Jun 2023 16:20:10 +08:00 > Committer: Peter Zijlstra > CommitterDate: Fri, 16 Jun 2023 22:08:12 +02:00 > > sched/core: Avoid double calling update_rq_clock() in __balance_push_cpu_stop() > > There is a double update_rq_clock() invocation: > > __balance_push_cpu_stop() > update_rq_clock() > __migrate_task() > update_rq_clock() > > Sadly select_fallback_rq() also needs update_rq_clock() for > __do_set_cpus_allowed(), it is not possible to remove the update from > __balance_push_cpu_stop(). So remove it from __migrate_task() and > ensure all callers of this function call update_rq_clock() prior to > calling it. > Hi Peter, Thank you very much for refactoring these commit messages to make it clearer and more concise. Thanks, Hao > Signed-off-by: Hao Jia > Signed-off-by: Peter Zijlstra (Intel) > Reviewed-by: Vincent Guittot > Link: https://lkml.kernel.org/r/20230613082012.49615-3-jiahao.os@bytedance.com > --- > kernel/sched/core.c | 7 ++++--- > 1 file changed, 4 insertions(+), 3 deletions(-) > > diff --git a/kernel/sched/core.c b/kernel/sched/core.c > index 442efe5..c7db597 100644 > --- a/kernel/sched/core.c > +++ b/kernel/sched/core.c > @@ -2546,7 +2546,6 @@ static struct rq *__migrate_task(struct rq *rq, struct rq_flags *rf, > if (!is_cpu_allowed(p, dest_cpu)) > return rq; > > - update_rq_clock(rq); > rq = move_queued_task(rq, rf, p, dest_cpu); > > return rq; > @@ -2604,10 +2603,12 @@ static int migration_cpu_stop(void *data) > goto out; > } > > - if (task_on_rq_queued(p)) > + if (task_on_rq_queued(p)) { > + update_rq_clock(rq); > rq = __migrate_task(rq, &rf, p, arg->dest_cpu); > - else > + } else { > p->wake_cpu = arg->dest_cpu; > + } > > /* > * XXX __migrate_task() can fail, at which point we might end