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=-3.7 required=3.0 tests=BAYES_00, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE,SPF_PASS, URIBL_BLOCKED autolearn=no 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 D5C76C433E2 for ; Thu, 17 Sep 2020 02:18:11 +0000 (UTC) Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by mail.kernel.org (Postfix) with ESMTP id 6FC332072E for ; Thu, 17 Sep 2020 02:18:11 +0000 (UTC) DMARC-Filter: OpenDMARC Filter v1.3.2 mail.kernel.org 6FC332072E Authentication-Results: mail.kernel.org; dmarc=fail (p=none dis=none) header.from=intel.com Authentication-Results: mail.kernel.org; spf=pass smtp.mailfrom=owner-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix) id C92456B0071; Wed, 16 Sep 2020 22:18:10 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id C430D6B0072; Wed, 16 Sep 2020 22:18:10 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id B59E46B0073; Wed, 16 Sep 2020 22:18:10 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from forelay.hostedemail.com (smtprelay0220.hostedemail.com [216.40.44.220]) by kanga.kvack.org (Postfix) with ESMTP id 9FEC86B0071 for ; Wed, 16 Sep 2020 22:18:10 -0400 (EDT) Received: from smtpin06.hostedemail.com (10.5.19.251.rfc1918.com [10.5.19.251]) by forelay04.hostedemail.com (Postfix) with ESMTP id 5769E249A for ; Thu, 17 Sep 2020 02:18:10 +0000 (UTC) X-FDA: 77270943540.06.home51_3516b3c2711e Received: from filter.hostedemail.com (10.5.16.251.rfc1918.com [10.5.16.251]) by smtpin06.hostedemail.com (Postfix) with ESMTP id 293C6100BF46C for ; Thu, 17 Sep 2020 02:18:10 +0000 (UTC) X-HE-Tag: home51_3516b3c2711e X-Filterd-Recvd-Size: 3079 Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by imf50.hostedemail.com (Postfix) with ESMTP for ; Thu, 17 Sep 2020 02:18:08 +0000 (UTC) IronPort-SDR: XPk3iTT0Nc+epLbacD90tb5WceLDTGVxSmJqcDS/K+CggqFE1hXsjGiptArzykfZgLvr8OiD7z Fk/nQZpjhu2Q== X-IronPort-AV: E=McAfee;i="6000,8403,9746"; a="147293195" X-IronPort-AV: E=Sophos;i="5.76,434,1592895600"; d="scan'208";a="147293195" X-Amp-Result: SKIPPED(no attachment in message) X-Amp-File-Uploaded: False Received: from fmsmga003.fm.intel.com ([10.253.24.29]) by orsmga101.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 16 Sep 2020 19:18:07 -0700 IronPort-SDR: RyW/XF2QCFYjBGFf4yPbqq0p+JS78SW5ZGhiITYlXrKKk3I9Vna4p8LPaDYdOgUXbMXlKWQoiM OSgGhpMn3p9g== X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.76,434,1592895600"; d="scan'208";a="344116004" Received: from yhuang-dev.sh.intel.com (HELO yhuang-dev) ([10.239.159.164]) by FMSMGA003.fm.intel.com with ESMTP; 16 Sep 2020 19:18:04 -0700 From: "Huang\, Ying" To: peterz@infradead.org Cc: linux-mm@kvack.org, linux-kernel@vger.kernel.org, Andrew Morton , Ingo Molnar , Mel Gorman , Rik van Riel , Johannes Weiner , "Matthew Wilcox \(Oracle\)" , Dave Hansen , Andi Kleen , Michal Hocko , David Rientjes Subject: Re: [RFC] autonuma: Migrate on fault among multiple bound nodes References: <20200916005936.232788-1-ying.huang@intel.com> <20200916081052.GI2674@hirez.programming.kicks-ass.net> Date: Thu, 17 Sep 2020 10:18:03 +0800 In-Reply-To: <20200916081052.GI2674@hirez.programming.kicks-ass.net> (peterz@infradead.org's message of "Wed, 16 Sep 2020 10:10:52 +0200") Message-ID: <87ft7hrvs4.fsf@yhuang-dev.intel.com> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/26.3 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain; charset=ascii X-Rspamd-Queue-Id: 293C6100BF46C X-Spamd-Result: default: False [0.00 / 100.00] X-Rspamd-Server: rspam02 X-Bogosity: Ham, tests=bogofilter, spamicity=0.000000, version=1.2.4 Sender: owner-linux-mm@kvack.org Precedence: bulk X-Loop: owner-majordomo@kvack.org List-ID: peterz@infradead.org writes: > On Wed, Sep 16, 2020 at 08:59:36AM +0800, Huang Ying wrote: >> +static bool mpol_may_mof(struct mempolicy *pol) >> +{ >> + /* May migrate among bound nodes for MPOL_BIND */ >> + return pol->flags & MPOL_F_MOF || >> + (pol->mode == MPOL_BIND && nodes_weight(pol->v.nodes) > 1); >> +} > > This is weird, why not just set F_MOF on the policy? > > In fact, why wouldn't something like: > > mbind(.mode=MPOL_BIND, .flags=MPOL_MF_LAZY); > > work today? Afaict MF_LAZY will unconditionally result in M_MOF. Another question. This means for all VMAs that are mbind() without MPOL_MF_LAZY and tasks which binds memory via set_mempolicy(), we will not try to optimize their page placement among the bound nodes even if sysctl knob kernel.numa_balancing is enabled. Is this the intended behavior? Although we enable AutoNUMA globally, we will not try to use it in any places if possible. In some places, it needs to be enabled again. Best Regards, Huang, Ying