From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-19.7 required=3.0 tests=BAYES_00,DKIMWL_WL_HIGH, DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,INCLUDES_CR_TRAILER,INCLUDES_PATCH, MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS,URIBL_BLOCKED,USER_AGENT_GIT autolearn=ham autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 065B3C11F66 for ; Wed, 14 Jul 2021 13:54:37 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [23.128.96.18]) by mail.kernel.org (Postfix) with ESMTP id DFED6613BF for ; Wed, 14 Jul 2021 13:54:36 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S239440AbhGNN51 (ORCPT ); Wed, 14 Jul 2021 09:57:27 -0400 Received: from mail.kernel.org ([198.145.29.99]:45214 "EHLO mail.kernel.org" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S239284AbhGNN5Z (ORCPT ); Wed, 14 Jul 2021 09:57:25 -0400 Received: by mail.kernel.org (Postfix) with ESMTPSA id 4B84A613D1; Wed, 14 Jul 2021 13:54:31 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1626270873; bh=hwa9dZbwQb6e2uewfwoomlLnro+e6qpIwA8eeMY71nI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=jdFGzMH5oquC8WgqwTxb2xAa21B/AY2Q2QiVRrxuA65Ag1vzw2uvXbsV+GSyv8cQn CA2SLYGD7WLt9fADtnbS9SMCMrqqszAmMHNQnR+df1QJ04Kb63Ox/+wzq34PP37FK8 Mx5TloljxZAqEzPAYzp1xiE3EnVngQFm/AwdxcoRiGgNm46eeRr0xRg4dTcDIHml2b AsUwELbPxfL3hlKGXr4d/B/5nEsNOQfS5PrsiB/KUBsaf2GpsqxOLQGWD175OjdD4+ fnLrOjLkcnAoRdNksf37PLxD8Ix+WhQsqi8/aNDVFv0QmOC2djU97Nio1FvNIq92H8 ULW5vsPmB+T3Q== From: Frederic Weisbecker To: LKML Cc: Frederic Weisbecker , Tejun Heo , Peter Zijlstra , Juri Lelli , Alex Belits , Nitesh Lal , Thomas Gleixner , Nicolas Saenz , Christoph Lameter , Marcelo Tosatti , Zefan Li , cgroups@vger.kernel.org Subject: [RFC PATCH 2/6] workqueue: Decouple HK_FLAG_WQ and HK_FLAG_DOMAIN cpumask fetch Date: Wed, 14 Jul 2021 15:54:16 +0200 Message-Id: <20210714135420.69624-3-frederic@kernel.org> X-Mailer: git-send-email 2.25.1 In-Reply-To: <20210714135420.69624-1-frederic@kernel.org> References: <20210714135420.69624-1-frederic@kernel.org> MIME-Version: 1.0 Content-Transfer-Encoding: 8bit Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org To prepare for supporting each feature of the housekeeping cpumask toward cpuset, prepare for HK_FLAG_DOMAIN to move to its own cpumask. This will allow to modify the set passed through "isolcpus=" kernel boot parameter on runtime. Signed-off-by: Frederic Weisbecker Cc: Thomas Gleixner Cc: Juri Lelli Cc: Marcelo Tosatti Cc: Nitesh Lal Cc: Nicolas Saenz Cc: Peter Zijlstra Cc: Christoph Lameter Cc: Tejun Heo Cc: Zefan Li Cc: Alex Belits --- kernel/workqueue.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/workqueue.c b/kernel/workqueue.c index 50142fc08902..d29c5b61a333 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c @@ -5938,13 +5938,13 @@ static void __init wq_numa_init(void) void __init workqueue_init_early(void) { int std_nice[NR_STD_WORKER_POOLS] = { 0, HIGHPRI_NICE_LEVEL }; - int hk_flags = HK_FLAG_DOMAIN | HK_FLAG_WQ; int i, cpu; BUILD_BUG_ON(__alignof__(struct pool_workqueue) < __alignof__(long long)); BUG_ON(!alloc_cpumask_var(&wq_unbound_cpumask, GFP_KERNEL)); - cpumask_copy(wq_unbound_cpumask, housekeeping_cpumask(hk_flags)); + cpumask_copy(wq_unbound_cpumask, housekeeping_cpumask(HK_FLAG_WQ)); + cpumask_and(wq_unbound_cpumask, wq_unbound_cpumask, housekeeping_cpumask(HK_FLAG_DOMAIN)); pwq_cache = KMEM_CACHE(pool_workqueue, SLAB_PANIC); -- 2.25.1 From mboxrd@z Thu Jan 1 00:00:00 1970 From: Frederic Weisbecker Subject: [RFC PATCH 2/6] workqueue: Decouple HK_FLAG_WQ and HK_FLAG_DOMAIN cpumask fetch Date: Wed, 14 Jul 2021 15:54:16 +0200 Message-ID: <20210714135420.69624-3-frederic@kernel.org> References: <20210714135420.69624-1-frederic@kernel.org> Mime-Version: 1.0 Content-Transfer-Encoding: 8bit Return-path: DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=kernel.org; s=k20201202; t=1626270873; bh=hwa9dZbwQb6e2uewfwoomlLnro+e6qpIwA8eeMY71nI=; h=From:To:Cc:Subject:Date:In-Reply-To:References:From; b=jdFGzMH5oquC8WgqwTxb2xAa21B/AY2Q2QiVRrxuA65Ag1vzw2uvXbsV+GSyv8cQn CA2SLYGD7WLt9fADtnbS9SMCMrqqszAmMHNQnR+df1QJ04Kb63Ox/+wzq34PP37FK8 Mx5TloljxZAqEzPAYzp1xiE3EnVngQFm/AwdxcoRiGgNm46eeRr0xRg4dTcDIHml2b AsUwELbPxfL3hlKGXr4d/B/5nEsNOQfS5PrsiB/KUBsaf2GpsqxOLQGWD175OjdD4+ fnLrOjLkcnAoRdNksf37PLxD8Ix+WhQsqi8/aNDVFv0QmOC2djU97Nio1FvNIq92H8 ULW5vsPmB+T3Q== In-Reply-To: <20210714135420.69624-1-frederic-DgEjT+Ai2ygdnm+yROfE0A@public.gmane.org> List-ID: Content-Type: text/plain; charset="us-ascii" To: LKML Cc: Frederic Weisbecker , Tejun Heo , Peter Zijlstra , Juri Lelli , Alex Belits , Nitesh Lal , Thomas Gleixner , Nicolas Saenz , Christoph Lameter , Marcelo Tosatti , Zefan Li , cgroups-u79uwXL29TY76Z2rM5mHXA@public.gmane.org To prepare for supporting each feature of the housekeeping cpumask toward cpuset, prepare for HK_FLAG_DOMAIN to move to its own cpumask. This will allow to modify the set passed through "isolcpus=" kernel boot parameter on runtime. Signed-off-by: Frederic Weisbecker Cc: Thomas Gleixner Cc: Juri Lelli Cc: Marcelo Tosatti Cc: Nitesh Lal Cc: Nicolas Saenz Cc: Peter Zijlstra Cc: Christoph Lameter Cc: Tejun Heo Cc: Zefan Li Cc: Alex Belits --- kernel/workqueue.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/kernel/workqueue.c b/kernel/workqueue.c index 50142fc08902..d29c5b61a333 100644 --- a/kernel/workqueue.c +++ b/kernel/workqueue.c @@ -5938,13 +5938,13 @@ static void __init wq_numa_init(void) void __init workqueue_init_early(void) { int std_nice[NR_STD_WORKER_POOLS] = { 0, HIGHPRI_NICE_LEVEL }; - int hk_flags = HK_FLAG_DOMAIN | HK_FLAG_WQ; int i, cpu; BUILD_BUG_ON(__alignof__(struct pool_workqueue) < __alignof__(long long)); BUG_ON(!alloc_cpumask_var(&wq_unbound_cpumask, GFP_KERNEL)); - cpumask_copy(wq_unbound_cpumask, housekeeping_cpumask(hk_flags)); + cpumask_copy(wq_unbound_cpumask, housekeeping_cpumask(HK_FLAG_WQ)); + cpumask_and(wq_unbound_cpumask, wq_unbound_cpumask, housekeeping_cpumask(HK_FLAG_DOMAIN)); pwq_cache = KMEM_CACHE(pool_workqueue, SLAB_PANIC); -- 2.25.1