Path: csiph.com!aioe.org!bofh.it!news.nic.it!robomod From: Peter Zijlstra Newsgroups: linux.kernel Subject: [PATCH 07/14] sched/topology: Optimize build_group_mask() Date: Fri, 28 Apr 2017 15:40:01 +0200 Message-ID: References: Dkim-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=infradead.org; s=bombadil.20170209; h=Content-Type:MIME-Version:References: Subject:Cc:To:From:Date:Message-Id:Sender:Reply-To:Content-Transfer-Encoding: Content-ID:Content-Description:Resent-Date:Resent-From:Resent-Sender: Resent-To:Resent-Cc:Resent-Message-ID:In-Reply-To:List-Id:List-Help: List-Unsubscribe:List-Subscribe:List-Post:List-Owner:List-Archive; bh=G8NMaJp5xNUJHk1esfWE/F7z/EbJi07Cgz5vfDFZmms=; b=EhZdKzx9SNojGllaxwpTX1LrZ6 m06gcDFTVVqzSw7rsIs57kFAJks0jWYlLkUvwIeDnZEN04ts+cwF8hCZGVu1ElgSfMh/06cAPeqWV suLfD0J9KodnrYPLFb88PRjIPJuvEurn3tFaLMotiuSWNFzOtLeUku6FoFPbBfnfR6Raaxl2FPMmt jflwbxqsw7wpI1Nkr9AlAGOMuIAl1EwZWOEkMgPbGYt1ybQksfD0pSg3LrHKmse8NwA69NoawMHe0 e0ZZ156B30aCTRnnCpMPqONR54pwZSa4QWvpV4SgtzN3gVC6HZ5nZ9tLN5nf0JI92Pf2Xo8wJ8vhW GORAaZZA==; User-Agent: quilt/0.63-1 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Disposition: inline; filename=lauro_ramos_venancio-sched_topology-optimize_build_group_mask.patch Sender: robomod@news.nic.it List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Approved: robomod@news.nic.it Lines: 32 Organization: linux.* mail to news gateway X-Original-Cc: lwang@redhat.com, riel@redhat.com, efault@gmx.de, tglx@linutronix.de, linux-kernel@vger.kernel.org, peterz@infradead.org X-Original-Date: Fri, 28 Apr 2017 15:20:05 +0200 X-Original-Message-ID: <20170428132502.699851310@infradead.org> X-Original-References: <20170428131958.893188882@infradead.org> X-Original-Sender: linux-kernel-owner@vger.kernel.org Xref: csiph.com linux.kernel:1632876 The group mask is always used in intersection with the group cpus. So, when building the group mask, we don't have to care about cpus that are not part of the group. Cc: Ingo Molnar Cc: Mike Galbraith Cc: Thomas Gleixner Cc: riel@redhat.com Signed-off-by: Lauro Ramos Venancio Signed-off-by: Peter Zijlstra (Intel) Link: http://lkml.kernel.org/r/1492717903-5195-2-git-send-email-lvenanci@redhat.com --- kernel/sched/topology.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- a/kernel/sched/topology.c +++ b/kernel/sched/topology.c @@ -506,12 +506,12 @@ enum s_alloc { */ static void build_group_mask(struct sched_domain *sd, struct sched_group *sg) { - const struct cpumask *span = sched_domain_span(sd); + const struct cpumask *sg_span = sched_group_cpus(sg); struct sd_data *sdd = sd->private; struct sched_domain *sibling; int i; - for_each_cpu(i, span) { + for_each_cpu(i, sg_span) { sibling = *per_cpu_ptr(sdd->sd, i); if (!cpumask_test_cpu(i, sched_domain_span(sibling))) continue;