Received: by 2002:a25:ab43:0:0:0:0:0 with SMTP id u61csp99491ybi; Thu, 20 Jun 2019 18:41:48 -0700 (PDT) X-Google-Smtp-Source: APXvYqyZLjSvHyySdztQcD4TfcL1yIxb1xJ0o/DDKHO+qVXLg8q66qh4tfOyNTUxRWvq3sYGkcYy X-Received: by 2002:a63:8a41:: with SMTP id y62mr4281945pgd.38.1561081308049; Thu, 20 Jun 2019 18:41:48 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1561081308; cv=none; d=google.com; s=arc-20160816; b=SBr2KBHKbE+dSZhoL7MhyeWY+/SPnh3u87XK0yxRvw6tKaPNvadnXSrcRzS7sinwRs xD7s4n8JQQgilIjRfJd4Z2MlKGTb8yj7GLBvpagTq5viQnia7yHrJ7ISNzmIQT8noxDU Uxg2ma5NPwm7rVsDDDX2wZeHK/569ftUXw62Up6JhXam16MnqRVtWwjhi08YrDR0ja9l 87Dqk/mLFlVYA0IQXHFwJgTwEsfOyX8+z3wnBFAHkhOGGumzuoA6Pnbxki5+4J4vRNkf UTxi1e8XqnAfnFkYsdLCBL0qZo6mMhv1jzcnREkrRaAFKyRgQ3pwTDGZYVF60Er/mzIK kiQA== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:cc:to:subject:message-id:date:from :in-reply-to:references:mime-version:dkim-signature; bh=Rzeo006/jzKSPbm/r6/uBrpWXDZY3RJIqz2UkltKFyE=; b=OqLDGsMqxER1KYXaQ+XNDhzaggfz9BJIUzD6pZ9+/uwDO5b7ANymzqpEtWmSdhICGj o2bhmIv6WsFezE3Wt3tbSaEeFGAVDpPthwOT/N0MoMHIcsvOcHi56snjIjWdRJ5J3Zdw OCSdftLyYshvyZLC/8+Wdw1Y8DUbHYKnrRHz+dC8Lu/n2P3x+QOZlemnVcNI93jI6NsW AIxUT3qsfUWm0H+dk3yathAxvh21jcEZ7kDg0eptV/Nkp6BiOfO0RlgmMIoPfW6UlILI ExWtXKa23FkWMs7SWm0YQC0eH8zybKX9sa5Po3x4z/mjU5laSxwKpqHjMdCo5uS2a6k1 zHqQ== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=InHu5zUe; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 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. [209.132.180.67]) by mx.google.com with ESMTP id h9si1029907pgq.539.2019.06.20.18.41.31; Thu, 20 Jun 2019 18:41:48 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@gmail.com header.s=20161025 header.b=InHu5zUe; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 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 S1726220AbfFUBlM (ORCPT + 99 others); Thu, 20 Jun 2019 21:41:12 -0400 Received: from mail-ot1-f65.google.com ([209.85.210.65]:34546 "EHLO mail-ot1-f65.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1725936AbfFUBlM (ORCPT ); Thu, 20 Jun 2019 21:41:12 -0400 Received: by mail-ot1-f65.google.com with SMTP id n5so4756128otk.1 for ; Thu, 20 Jun 2019 18:41:11 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20161025; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=Rzeo006/jzKSPbm/r6/uBrpWXDZY3RJIqz2UkltKFyE=; b=InHu5zUe2eCXIwwtW0YOX9gE+fyok9lXwN7cVGa4LDl8uiFbj5KtVU7tjR2Q3cbsZw s7WbGsOSewa1njscsIAyEn7uZrD9r+eyBqXnL2jRE7tXwqRos1abF7o8FHOMd7X/I8KP 1TjN7xcOZfVlgnSvgS389tb2seOt2ZZCuALShhDwKxnuzq8DnXkERb83GnpNPkNysW/m SxEGAVKvao4sRWK8IcykA5zInIe1APOFnj261YgJTuIlUjr0mLLpivhtS2kKOr54595j EB9bvH9nEDQO8btvJf4HU7D0VCWn3jyb05uoMVY5FlrSBvmoqiwFHbotzOEeccKodt8B lH5A== 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; bh=Rzeo006/jzKSPbm/r6/uBrpWXDZY3RJIqz2UkltKFyE=; b=KQkqxR3Ihhnd/zDo9DfFjstp5ZrtXbfsPfksx1V7w79HhKEO9Snu58PQcOaUhNvi6a gu7yBo8LpgUOrNfAnpU3qlralnTvF0TpJxgX3V3s9k1O09djUej1QYr/5eeBriECyPxA Ct+HvDVSpmZhNQXMlb9BAdMrp6Z+PfOc+pw+f0UCkv59DxCeTogRMzr3hieYUy5g0VIO ASXTu2+BOVqA8bPGmmMofMjkCNaobRnE4QME3wvoWdbMX1bMRyfZBLuBMRlzcuvBq00d 2otD94pHI4FZ02C8AhMCbHjlia8pQNcLkPPiOPf5tUE8SGAaXOAAosLZ4DHFD3HkYYPO ySKQ== X-Gm-Message-State: APjAAAV4+gvTAc1P1fKVCSyQoNLule0WMqwsRMF3DRjnnMrUW7if8y/e wSSwPuIwlXmyYpf+7Ig3dclgewCfuUHFE1fqSPc= X-Received: by 2002:a9d:62c4:: with SMTP id z4mr5878774otk.56.1561080890907; Thu, 20 Jun 2019 18:34:50 -0700 (PDT) MIME-Version: 1.0 References: <1561030614-17026-1-git-send-email-wanpengli@tencent.com> <20190620123807.GX3436@hirez.programming.kicks-ass.net> In-Reply-To: <20190620123807.GX3436@hirez.programming.kicks-ass.net> From: Wanpeng Li Date: Fri, 21 Jun 2019 09:36:04 +0800 Message-ID: Subject: Re: [PATCH] sched/isolation: Prefer housekeeping cpu in local node To: Peter Zijlstra Cc: LKML , Ingo Molnar , Ingo Molnar , Frederic Weisbecker Content-Type: text/plain; charset="UTF-8" Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org On Thu, 20 Jun 2019 at 20:38, Peter Zijlstra wrote: > > On Thu, Jun 20, 2019 at 07:36:54PM +0800, Wanpeng Li wrote: > > From: Wanpeng Li > > > > In real product setup, there will be houseeking cpus in each nodes, it > > is prefer to do housekeeping from local node, fallback to global online > > cpumask if failed to find houseeking cpu from local node. > > > > Cc: Ingo Molnar > > Cc: Peter Zijlstra > > Cc: Frederic Weisbecker > > Signed-off-by: Wanpeng Li > > --- > > kernel/sched/isolation.c | 11 +++++++++-- > > 1 file changed, 9 insertions(+), 2 deletions(-) > > > > diff --git a/kernel/sched/isolation.c b/kernel/sched/isolation.c > > index 123ea07..9eb6805 100644 > > --- a/kernel/sched/isolation.c > > +++ b/kernel/sched/isolation.c > > @@ -16,9 +16,16 @@ static unsigned int housekeeping_flags; > > > > int housekeeping_any_cpu(enum hk_flags flags) > > { > > + int cpu; > > + > > if (static_branch_unlikely(&housekeeping_overridden)) > > - if (housekeeping_flags & flags) > > - return cpumask_any_and(housekeeping_mask, cpu_online_mask); > > + if (housekeeping_flags & flags) { > > + cpu = cpumask_any_and(housekeeping_mask, cpu_cpu_mask(smp_processor_id())); > > + if (cpu < nr_cpu_ids) > > + return cpu; > > + else > > + return cpumask_any_and(housekeeping_mask, cpu_online_mask); > > + } > > return smp_processor_id(); > > } > > EXPORT_SYMBOL_GPL(housekeeping_any_cpu); > > Why not something like so? IIRC there's more places that want this, but > I can't seem to remember quite where. Good point, do it in v2. Btw, could you have a look this patch? https://lkml.org/lkml/2019/6/17/1723 Regards, Wanpeng Li