Received: by 2002:a05:6a10:af89:0:0:0:0 with SMTP id iu9csp3509297pxb; Mon, 24 Jan 2022 11:03:17 -0800 (PST) X-Google-Smtp-Source: ABdhPJxnPZX4JG6QWUQNNx7+awr+TLcmTV/CN9IKjzI6LxLJOrtvmfh/uUwWMPPhLf9Wgy/o78AI X-Received: by 2002:a17:90a:4593:: with SMTP id v19mr3290042pjg.67.1643050997637; Mon, 24 Jan 2022 11:03:17 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1643050997; cv=none; d=google.com; s=arc-20160816; b=ZsNHx7pe066uP9GFKUEHR/ep/vAghdZjGBc7cOwnZWcIWQmeraFi0kxmuRkFeJNk0e xiIdGK0Yi0cwtvCqj/w+6qj95wa5rD0zB9SlXZ//oRl83LXY9oSm+ULFYHNRjqeTkoh5 F34RNQs/hSkkdd1hhKZicXyI1eBJIX0+HCpkLbNm+GKAzfM3AxjKJUnfkY0283nRZjcW 5wIbtX4PV6bX0ksjx/7P3TeKQBuOmDEdcMuyPejr8CTKrshT+fActXdCEPxOy8m4F0P7 fjmajEI5vfmGyGRXpMQdCA6cP/mp2Yv536pqHDRqXoy8neIag5u7gezg1B/0EI+CiSFh 6lLA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :references:in-reply-to:message-id:date:subject:cc:to:from :dkim-signature; bh=elaMpABJ6ePTMvkZA2OfFeFiKBytOl2OykV9muWIvyY=; b=poMMevldNlbEkN1XH3GwcK9o9lcoNVWZcKYJc84kovzgAvReYgsPX8ObEsQcUa5rC9 elDO7Uq99X9lZX+Fn34GT78BZ3TdCAzfzWsSj0e/AoZSX8VWf6o8vPCtNoEbauHqWNWs JPCljsISA/emocVdHLqoTKaRpVK70m4vlMSYoMakC4OVfgD19uF0YAjOpd4KIM9ZViNG kOdK//P9q4L9HX3BPTlFJbgDZ+x0MHWIK3q/uZfOyxytURwnY1dCipEtxccXQ9hbL1RX heYQtBZpPR7JyXpzMClr/Bos04kGMChPnFGEbL7hKF3GXfOgvkWLN3PwjenZgUX7TcgL a1JA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20210112 header.b=ggiLoLIe; 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=QUARANTINE dis=NONE) header.from=gmail.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [23.128.96.18]) by mx.google.com with ESMTP id z15si4074786pfe.46.2022.01.24.11.03.04; Mon, 24 Jan 2022 11:03:17 -0800 (PST) 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=@gmail.com header.s=20210112 header.b=ggiLoLIe; 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=QUARANTINE dis=NONE) header.from=gmail.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237164AbiAXKcP (ORCPT + 99 others); Mon, 24 Jan 2022 05:32:15 -0500 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:37892 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S237146AbiAXKcP (ORCPT ); Mon, 24 Jan 2022 05:32:15 -0500 Received: from mail-pj1-x102b.google.com (mail-pj1-x102b.google.com [IPv6:2607:f8b0:4864:20::102b]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id ECD03C06173B for ; Mon, 24 Jan 2022 02:32:14 -0800 (PST) Received: by mail-pj1-x102b.google.com with SMTP id nn16-20020a17090b38d000b001b56b2bce31so5461980pjb.3 for ; Mon, 24 Jan 2022 02:32:14 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; bh=elaMpABJ6ePTMvkZA2OfFeFiKBytOl2OykV9muWIvyY=; b=ggiLoLIe7AXZB+CBtdxcInt4cNSVMj8JD+iWER2gyyzqJtBN8xPr1NfzT+YVfqIqGE dRmbI60nBXEgCZN4qbBcV56qXgFxeaJ6B2lsyzfdkfc0+RMuHj40CnOwgfLRJPBEtS4V 9fPHrcYmkIMf2jfw/899ELc+w3ZYnTju1TRi5QEN3ZrlVV/AI6eaM5x5N0QRejnR5ZVb PVK8EEFRbj0E5Ak7cu+9/TWEa6FVX9jwrRczTP9Ogvm7mNW4rM4umGCmn4cyonuRkON9 fhDWow7qODcjS5xbG6DrAZ/LmnoidggV0XJ0y3Ll49Uyrx4GfMKS6C1cqzUgW/9K64Fv dZaw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:mime-version:content-transfer-encoding; bh=elaMpABJ6ePTMvkZA2OfFeFiKBytOl2OykV9muWIvyY=; b=WRNwhxB6yFHVwRUyp87PLMt/kvn6sAdZy6pNZOQ9GYcDlryyI6ZmihVAOCdGxEjsBr 5ALlfCwFFJ+oUgC4xFQwt4cQAn7K7EG2QY0DDC1WMVcgQzd8BcdL0fSBziu4dLEg2Ndk EpOpNZkIwqVq91c1nV74YbW+34hh5bi8wx3UG+GTyTN41YvdpFAgjKP9dhsfu7Zpy9Da 77iOh0xoSZFFd1BM7ChZ0HrwMsvIZDT1vgfsyoR+pkZjwaQYP5/J8QeIVqj3yJcgVIkR MYXwRoOp3JeeJnhMr53NkhgaaF9BIKFMplWlquQbGFGZAFZSy8wIaFqdS0Q7kFW4lo1g YVvw== X-Gm-Message-State: AOAM5330fO49/SA2ewvjP1IQLMZaPmwgWzzyhdtcn37KIN3MtxaVXX8E 0OXxzhdJaGH/W/dRMrH1c18= X-Received: by 2002:a17:902:d503:b0:14b:10e2:f387 with SMTP id b3-20020a170902d50300b0014b10e2f387mr13896394plg.9.1643020334523; Mon, 24 Jan 2022 02:32:14 -0800 (PST) Received: from archlinux.localdomain ([140.121.198.213]) by smtp.gmail.com with ESMTPSA id x7sm11749704pgr.87.2022.01.24.02.32.12 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 24 Jan 2022 02:32:14 -0800 (PST) From: Huichun Feng To: henrybear327@gmail.com Cc: bristot@redhat.com, bsegall@google.com, christian@brauner.io, dietmar.eggemann@arm.com, juri.lelli@redhat.com, linux-kernel@vger.kernel.org, mgorman@suse.de, mingo@redhat.com, peterz@infradead.org, rostedt@goodmis.org, vincent.guittot@linaro.org Subject: Re: [PATCH v2] sched: Simplify __sched_init runtime checks Date: Mon, 24 Jan 2022 18:33:02 +0800 Message-Id: <20220124103302.3124748-1-foxhoundsk.tw@gmail.com> X-Mailer: git-send-email 2.34.1 In-Reply-To: <20220124085332.41552-1-henrybear327@gmail.com> References: <20220124085332.41552-1-henrybear327@gmail.com> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Improve runtime checks in __sched_init(void) by replacing if conditional checks with preprocessor directives. Signed-off-by: Chun-Hung Tseng Signed-off-by: Huichun Feng --- kernel/sched/core.c | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/kernel/sched/core.c b/kernel/sched/core.c index 848eaa0efe0e..1b27ca7f485a 100644 --- a/kernel/sched/core.c +++ b/kernel/sched/core.c @@ -9308,28 +9308,29 @@ void __init sched_init(void) #ifdef CONFIG_RT_GROUP_SCHED ptr += 2 * nr_cpu_ids * sizeof(void **); #endif - if (ptr) { - ptr = (unsigned long)kzalloc(ptr, GFP_NOWAIT); + +#if defined(CONFIG_FAIR_GROUP_SCHED) || defined(CONFIG_RT_GROUP_SCHED) + ptr = (unsigned long)kzalloc(ptr, GFP_NOWAIT); #ifdef CONFIG_FAIR_GROUP_SCHED - root_task_group.se = (struct sched_entity **)ptr; - ptr += nr_cpu_ids * sizeof(void **); + root_task_group.se = (struct sched_entity **)ptr; + ptr += nr_cpu_ids * sizeof(void **); - root_task_group.cfs_rq = (struct cfs_rq **)ptr; - ptr += nr_cpu_ids * sizeof(void **); + root_task_group.cfs_rq = (struct cfs_rq **)ptr; + ptr += nr_cpu_ids * sizeof(void **); - root_task_group.shares = ROOT_TASK_GROUP_LOAD; - init_cfs_bandwidth(&root_task_group.cfs_bandwidth); + root_task_group.shares = ROOT_TASK_GROUP_LOAD; + init_cfs_bandwidth(&root_task_group.cfs_bandwidth); #endif /* CONFIG_FAIR_GROUP_SCHED */ #ifdef CONFIG_RT_GROUP_SCHED - root_task_group.rt_se = (struct sched_rt_entity **)ptr; - ptr += nr_cpu_ids * sizeof(void **); - - root_task_group.rt_rq = (struct rt_rq **)ptr; - ptr += nr_cpu_ids * sizeof(void **); + root_task_group.rt_se = (struct sched_rt_entity **)ptr; + ptr += nr_cpu_ids * sizeof(void **); + root_task_group.rt_rq = (struct rt_rq **)ptr; + ptr += nr_cpu_ids * sizeof(void **); #endif /* CONFIG_RT_GROUP_SCHED */ - } +#endif /* CONFIG_FAIR_GROUP_SCHED || CONFIG_RT_GROUP_SCHED */ + #ifdef CONFIG_CPUMASK_OFFSTACK for_each_possible_cpu(i) { per_cpu(load_balance_mask, i) = (cpumask_var_t)kzalloc_node( -- 2.34.1