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 Received: from kanga.kvack.org (kanga.kvack.org [205.233.56.17]) by smtp.lore.kernel.org (Postfix) with ESMTP id 7B8B0EE57C6 for ; Wed, 11 Sep 2024 16:46:56 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id F1848940071; Wed, 11 Sep 2024 12:46:55 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id EA1F2940066; Wed, 11 Sep 2024 12:46:55 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id D1B9F940071; Wed, 11 Sep 2024 12:46:55 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0014.hostedemail.com [216.40.44.14]) by kanga.kvack.org (Postfix) with ESMTP id B09C5940066 for ; Wed, 11 Sep 2024 12:46:55 -0400 (EDT) Received: from smtpin17.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay01.hostedemail.com (Postfix) with ESMTP id 4A5021C2100 for ; Wed, 11 Sep 2024 16:46:55 +0000 (UTC) X-FDA: 82553036790.17.B9735EF Received: from mail-qk1-f176.google.com (mail-qk1-f176.google.com [209.85.222.176]) by imf25.hostedemail.com (Postfix) with ESMTP id 61C2BA000C for ; Wed, 11 Sep 2024 16:46:52 +0000 (UTC) Authentication-Results: imf25.hostedemail.com; dkim=pass header.d=gourry.net header.s=google header.b=GadXpCuS; spf=pass (imf25.hostedemail.com: domain of gourry@gourry.net designates 209.85.222.176 as permitted sender) smtp.mailfrom=gourry@gourry.net; dmarc=none ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1726073108; h=from:from:sender:reply-to:subject:subject:date:date: message-id:message-id:to:to:cc:cc:mime-version:mime-version: content-type:content-type:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=eZ0xCLn9RINPzVaUjP7gK7Lrf8o6X9P3y5mlw1qgCZo=; b=aeVsaSLbMupjYLufm0O2HJFJp8GBNxK90W1zNyv2hN0rpJsBzt+lmebc+7nopnJpp2928Q 8EGgRwDN2Qu9A7WFXGqBwFWN7tVbmJQ8/h1Poj5FVTdITA+51+2y+EQUloLnHyKU7NRRXa 9e6dv/gOFniZXSJGfBFmzcnuoO9ElJM= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1726073108; a=rsa-sha256; cv=none; b=MnVaTCD1gBtsORfSdKLlKzT/wCoQbt2lLpm432siS6ABYs9AmodKWIxIYGvKVLUZIltjc6 mTbBhtTQbYGmi+teBPr9DYFC08feDFF6jww3yzyfYGOPoLZrvFrCfTWM2qPRtWf8lBb0RD 9MsZjAsPqlGvldeXQ7a8Y2sAwhZxMfQ= ARC-Authentication-Results: i=1; imf25.hostedemail.com; dkim=pass header.d=gourry.net header.s=google header.b=GadXpCuS; spf=pass (imf25.hostedemail.com: domain of gourry@gourry.net designates 209.85.222.176 as permitted sender) smtp.mailfrom=gourry@gourry.net; dmarc=none Received: by mail-qk1-f176.google.com with SMTP id af79cd13be357-7a99fdf2e1aso2486285a.2 for ; Wed, 11 Sep 2024 09:46:52 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gourry.net; s=google; t=1726073211; x=1726678011; darn=kvack.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=eZ0xCLn9RINPzVaUjP7gK7Lrf8o6X9P3y5mlw1qgCZo=; b=GadXpCuSnub6uGQRjPPkBBw1u5e0JCntAUV7N2v62f8pB0dcRSk1yKvQoWaz+PZFWB MbksQadX1rUsUFo5XT6BLe5TOZCbo05NW4XGQf62fJU3Bbf8NsIqqZpMHcTtnWKaTd8z aciNGjsXIDAb4trfCJC85ZdEmLCnBXVLaaLp6tD+FABdrdahgy2zPyC0wVKVbdRSV8vb RlSsZH+X+6APPQYljaEDTMMuMalJsZaxn98Lmy9rXLpfUjrNTMFDhfNxMwB20dV9MFr7 Pz6V1i0mN2di2B1MEQfuqRzL1DfaM2ZAlfmdGM8NpKeNYn8saC0gcGkWHKfRyZMy4ngG ovuw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1726073211; x=1726678011; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=eZ0xCLn9RINPzVaUjP7gK7Lrf8o6X9P3y5mlw1qgCZo=; b=TVyMBLPIJsBvPS4/qGwT/pWGa/k6pzlXPu4ZCV4yP8AjpW0o8AGHH833IxNlsuXnR4 ID0o+Ak/sMJZX3SGebl1xR7k3J/efQt5SgJQjgUVmY1eEgyIAGYxqWVws4vZT4bLPOFT 33nhqjAbwEFpWOzAcI9RwsfNwsoFUHuVm4gyLL5sSJHMaHK7F62jr27oY79sW4gTTu6w j+Ui8BNkZR6Ye4tdJYd+WE1/Iov1Jym0gW1iQRjUVpHc18iVEcnnQm2oGnKcJpysK2vE GVMttxkT99Yu2eWLVDb5PM721YjzjUglbNe2Ui8bqZl706VtzYx8B0TOliEQIpsGI+cY fkbg== X-Forwarded-Encrypted: i=1; AJvYcCW8qHGBtnBDHhv9ImTymWKsnk3153wTIH0B7gypobkUhYcNq3/2UypSCie3peAsFIW7s15qK7NArw==@kvack.org X-Gm-Message-State: AOJu0YzyasRMPlrrH/NdzdrOsYjqQfQvxrJ+wR+rt9V5pDnIhdMo+7sR GeNLWjKGBsio3U9NC2b3b8dEBzFdqMnisquKwQnnHyV77TtKTUpqQtVnC/MFMCQ= X-Google-Smtp-Source: AGHT+IE8IioPFY0oap5Ik4qWQT8uxzCEi9QNcrxryw8pTyfDkJT+rrffjUq7GmwJA2oBINLwWFrFwg== X-Received: by 2002:a05:620a:40d6:b0:7a9:b618:16aa with SMTP id af79cd13be357-7a9e5ee5348mr3005085a.10.1726073211272; Wed, 11 Sep 2024 09:46:51 -0700 (PDT) Received: from PC2K9PVX.TheFacebook.com (pool-173-79-56-208.washdc.fios.verizon.net. [173.79.56.208]) by smtp.gmail.com with ESMTPSA id af79cd13be357-7a9a7a04667sm440189185a.75.2024.09.11.09.46.49 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 11 Sep 2024 09:46:50 -0700 (PDT) Date: Wed, 11 Sep 2024 12:46:08 -0400 From: Gregory Price To: Ackerley Tng Cc: tabba@google.com, quic_eberman@quicinc.com, roypat@amazon.co.uk, jgg@nvidia.com, peterx@redhat.com, david@redhat.com, rientjes@google.com, fvdl@google.com, jthoughton@google.com, seanjc@google.com, pbonzini@redhat.com, zhiquan1.li@intel.com, fan.du@intel.com, jun.miao@intel.com, isaku.yamahata@intel.com, muchun.song@linux.dev, mike.kravetz@oracle.com, erdemaktas@google.com, vannapurve@google.com, qperret@google.com, jhubbard@nvidia.com, willy@infradead.org, shuah@kernel.org, brauner@kernel.org, bfoster@redhat.com, kent.overstreet@linux.dev, pvorel@suse.cz, rppt@kernel.org, richard.weiyang@gmail.com, anup@brainfault.org, haibo1.xu@intel.com, ajones@ventanamicro.com, vkuznets@redhat.com, maciej.wieczor-retman@intel.com, pgonda@google.com, oliver.upton@linux.dev, linux-kernel@vger.kernel.org, linux-mm@kvack.org, kvm@vger.kernel.org, linux-kselftest@vger.kernel.org, linux-fsdevel@kvack.org Subject: Re: [RFC PATCH 04/39] mm: mempolicy: Refactor out policy_node_nodemask() Message-ID: References: <9831cfcc77e325e48ec3674c3a518bda76e78df5.1726009989.git.ackerleytng@google.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <9831cfcc77e325e48ec3674c3a518bda76e78df5.1726009989.git.ackerleytng@google.com> X-Rspam-User: X-Rspamd-Server: rspam04 X-Rspamd-Queue-Id: 61C2BA000C X-Stat-Signature: s1zh74i1s6gbz9d4po9ztayu7dik8b8o X-HE-Tag: 1726073212-119694 X-HE-Meta: U2FsdGVkX1+TO6x5HW4yE/Cc1atz4FTqPzXBP0Y7f5+hzv3uBAYTTfBzA9kUj2+43MiHW8tDaNlM7kHChAdr9JfDNf5MMY+VoKd9n69N9Ghf+2EUzLfWtI8hrX/7MFAFE94ntyWRPFa+qUNZlX1GxskBZGPfCdweoCbw3o+6YhW8HYmjmFzfLgtx5WyAVOFSAM9FFd07gwO2kGS+Fmspb0udB/fcOY4dKr1YtjAgQH1whPdxsCUFYKd6Z9v1KQoCW7K0VhUacLbxNOGksT0H+5OTDv4xtAa8gQ9j6Y8vUhNJ7o0d2MgJC5hqKgo6vi5I3ZEbOThfh6v9imnLs92ADOufac/WGFEEVerUTdaUWeyZ6+NVf7rshCzwL6U3nljaSD/PUKjbHHprAN6h7xs1NQ98QLhOdCdtAgPb2mebNKsoqMb2CtJPuiiBkOpUEyJxiuWdnKlv9bs4ve4ZLTkhw1Unle59Ld7C+lmBEsVsbsfEiKDPHFtD7a0oS9oJbl6V3a30ieGEa3j1COAGfkSq7DKFjaSDCH9tj8Acm3DckHY9uUcmRtsZ88hmxNGhFdsWGghJMQdbztcITypKovqEO+o2Ph6q5z7N/QGtoTE5kkbFJGszoYMstwTnB6wwJ2bVtz//P2HOF4WFjm9e+HvsIuoSPJfOL1kOEmvlEXnAXjdgOkIlK1dpEKCKi3QLT/93OrJxEL/jmzmP9xrC1ohuIYlTxytB3Pn+k+pDqDDKmy9vT9kXMVRoLPp9LUs0wff3uzDl+queDT2WqbiY5tiD/Y0dGjIr7b+kUp+yHGSkIxB5NVPQXNtlMURkDuZKbMe9gu5L6Ic0BDdEzy2EcvbN9Btm1WtuVTH4+/hobb/3aGHMl2wlFPvnqaV9fBKzAGjFvDIgm/pMS/JaQFuNUU/1Y4dhPLvMkXTrj3nUR9BUEh3vs/x9kL7ouKapvauXKQzpxLDsfvMXMB4T2iG0RA/ pBREASfW DHNWnLbr1qMuoRZbEZR37F+ORBq3MKbwyycpwrTBsXCFb188sdCwwqU76gPmtDzydka3LTx8TQw3XsdKYwnGLXAFGCdLQAO1lPbyV/TJuI+gJHhXMrNd/Om2lar/38daQvG5XxSvwgSiP/fV6opx31+/bIP608ojoPuVo9Q6OclpMXXeHUi1YJgOo3N1bClP+QEvjkQdvR4uINz90CiBo2w2772EZQo2HdozAuN4PsTVzOnOUClIxa+uCRZ/7CSVLME14sHilkdglGdAiu+uYgEnqJDmXQJuLYUdk0McWxH/1V44Gla1MC4rbWMR6BJYPllu6JKJo4QFdsXXxsDBWetzPi+yrT9zP3NAxmoKNyzoMSx+a/uOHvQJJB3A7s6INzfD3KNvvKZBjMJIsJzee40ymDlEkorqXC7HMldp/s50cWGNPqpmL1wCQzdiqFrqW4uNasKuGWPf66y3OM2jH6gFf4WSOpZH6DKImTKb2aKVK86g= 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: List-Subscribe: List-Unsubscribe: On Tue, Sep 10, 2024 at 11:43:35PM +0000, Ackerley Tng wrote: > This was refactored out of huge_node(). > > huge_node()'s interpretation of vma for order assumes the > hugetlb-specific storage of the hstate information in the > inode. policy_node_nodemask() does not assume that, and can be used > more generically. > > This refactoring also enforces that nid default to the current node > id, which was not previously enforced. > > alloc_pages_mpol_noprof() is the last remaining direct user of > policy_nodemask(). All its callers begin with nid being the current > node id as well. More refactoring is required for to simplify that. > > Signed-off-by: Ackerley Tng Reviewed-by: Gregory Price > +/** > + * policy_node_nodemask(@mpol, @gfp_flags, @ilx, @nodemask) > + * @mpol: the memory policy to interpret. Reference must be taken. > + * @gfp_flags: for this request > + * @ilx: interleave index, for use only when MPOL_INTERLEAVE or > + * MPOL_WEIGHTED_INTERLEAVE > + * @nodemask: (output) pointer to nodemask pointer for 'bind' and 'prefer-many' > + * policy > + * > + * Returns a nid suitable for a page allocation and a pointer. If the effective > + * policy is 'bind' or 'prefer-many', returns a pointer to the mempolicy's > + * @nodemask for filtering the zonelist. Technically it's possible for nid to contain MAX_NUMNODES upon return if weighted interleave is used and the nodemask is somehow invalid (contains no nodes, including the local node). I would expect this to be indicative of a larger problem (i.e. should functionally never happen). Now that I'm looking at it, it's possible the weighted interleave path should default to returning numa_node_id() if node == MAX_NUMNODES, which would not require any changes to this patch. > + */ > +int policy_node_nodemask(struct mempolicy *mpol, gfp_t gfp_flags, > + pgoff_t ilx, nodemask_t **nodemask) > +{ > + int nid = numa_node_id(); > + *nodemask = policy_nodemask(gfp_flags, mpol, ilx, &nid); > + return nid; > +} > + > #ifdef CONFIG_HUGETLBFS > /* > * huge_node(@vma, @addr, @gfp_flags, @mpol)