From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pj1-f45.google.com (mail-pj1-f45.google.com [209.85.216.45]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (No client certificate requested) by smtp.subspace.kernel.org (Postfix) with ESMTPS id 2FABE4BC002 for ; Wed, 13 May 2026 13:21:04 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.216.45 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778678466; cv=none; b=FpO/NlxAKzei5Hrvj+f48iYR+7kwQAg87uFzteRsoV4v3MIWZt7G/4XB5sfj9nxXQdOu3J+/jDgDCf+pe/le6mCJ36VL1E7DuMvPwh5PeOMJWr8JNGO/wV/9f2S1E4iB9vLuFjuwHoM+plFZTdt5QeTt3NlqGGB9qwohdYObK70= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1778678466; c=relaxed/simple; bh=yHz/aQkeyVCQmiK5Ff1MNYhVFQFGSd9hNUOfxcqy1Jw=; h=From:To:Cc:Subject:Date:Message-ID:In-Reply-To:References: MIME-Version; b=ejxu3C7PoqQh4gTfq71Vog7Y1Nk4KSgpVCApjURauo/k0tT99eDPAhAOsNSp9gyyMWwHsFvFI6z2IL09PCsbTIPpKsAwAw3p+Wu7Mpk4TfSxK5w/IKBltGeo8oQDhDboN5BrTixE3Vq81zJd58HJg9WYBKn+Yf5o8moBxts7OsM= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=bytedance.com; spf=pass smtp.mailfrom=bytedance.com; dkim=pass (2048-bit key) header.d=bytedance.com header.i=@bytedance.com header.b=VHK914CI; arc=none smtp.client-ip=209.85.216.45 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=quarantine dis=none) header.from=bytedance.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=bytedance.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=bytedance.com header.i=@bytedance.com header.b="VHK914CI" Received: by mail-pj1-f45.google.com with SMTP id 98e67ed59e1d1-362e50b4641so4196226a91.0 for ; Wed, 13 May 2026 06:21:04 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1778678464; x=1779283264; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:from:to:cc:subject:date :message-id:reply-to; bh=kmMHI/Oobz3lupMdXI7U03Ar3ucRA9ahppmUoHlMfZ0=; b=VHK914CIwNH5Cy/6vQfyepEmXJJ5KS7nI9YnZaKvRuPpS1p3XN4sR3E2iJx0W7G0C7 uFEBSAI/o0a86gu+0lssZbJzJVUxrM97uchfoxWplY+lpX3q7cZka6+F6nB1bwIS9mFs asv4egm9GMLnXrbQZJrM1BG041y7nQHpgGca3YEXLGpmpkGZj2osvwR83pRF9+U1ifpN MlzM0gcDksz2BJ+iYPeKvUAn/cGqa5c+SwBrIbpV4/iM7cAKg0D2G3gFqeHNkQHtE7U/ zeNijdxQ9Grv+PLhxrU+dYEElZPunFdfX8u+6AT/bQEMalUhVn4RtroojikMDILJnwqs XgRA== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1778678464; x=1779283264; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-gg:x-gm-message-state:from :to:cc:subject:date:message-id:reply-to; bh=kmMHI/Oobz3lupMdXI7U03Ar3ucRA9ahppmUoHlMfZ0=; b=qq7ZOpjOJNZ14fLB9G5Y9Hc/YtDJgl+KiohlWSBR/qnU2Fw0j+cTHaINllqKbzejnm BH3Cni1edrYjkUptLMCRloiDYUqkVmePixl6GuTd6r+7Xg9AjnvhxDMallo+FhiiqNuZ cz5bYtpS39ogK4JQNGFKIK4gggYEBxUiQgZaZcYZv2bCdTuVKBvS+ak+o/EbfWjeEfsb Xo0dgYi+X1nUvlqLlhOerG7BzOdFMkUWtAJzJPT2CvOKFVtERMFAjfAMCZsvDVJmQGOf 3wfShA+1KVMgAgwN2TJXIwN0mpYbd9wGvCi4hVf8TcdmKRRwjRa5+9OUIoTvKZ8nSkjn rw4w== X-Forwarded-Encrypted: i=1; AFNElJ+8mTQKeU/3rexavRU+mEsjPBVQ2R7/VUNufJs0fmvU00vAOmOXAyEnhSRZm+yaEpA5yJ+eKItywdwOjyg=@vger.kernel.org X-Gm-Message-State: AOJu0YyCugACr5I8Vd4BpLNM3NfvlVQnIlUB0gRPzdmZDpNMCkRJ0SsD qd4ZkWDRt1KZIj+TpVvo4DDlaqJUIn13RbXxgj3dxVzh6firc8UqxN3wiVDrCJhYUXQ= X-Gm-Gg: Acq92OFDUH5ZrKjjJ7qdpNEm3SjZrBPn3z0ys9KypFzI1MO76VDrSlL2vOS+455Ym2C TdxjO76EyU4SHG31y1CAgWOc1ePPo0c9Z7WYMvI99qd00K1AQInkJn+5cf4bP+bXm3cwyz42Nl6 Ao3GpfjiN0nWLLaqD7FEOyjDMq6nWTC0cAlBr41TLpuqTGvk85eBFTQOb9jdJatAhBjvscbr+f3 V6lYX4ZYS/0+EQgZRdx5dhKeniHtJBLIYuooA1JUCGy1txUsB41LBsipEsu2jl6OECiRDy1TfFY OSQraY/si8yn1K5S3FawYUX4d6CUdTN5ExZmKqDhkEjIKY8vScZl41BF0aNCV9p+VjfhLxILUuw bJcP709mbj1xqd8IjwIuKTBTCNtB5YjWUxWQFgF1MXwQFSs6eNiSqAbYkWVmlDZG5T3oyfgKfAq GcN7CxrJo6OlglPBdX/WDKxtkAlxkbrZQwo1k/5hgNXW1X4M3uCgqF/jyjj7kw X-Received: by 2002:a17:90b:51ca:b0:366:3df3:fe45 with SMTP id 98e67ed59e1d1-368f3e43e84mr3548880a91.19.1778678463950; Wed, 13 May 2026 06:21:03 -0700 (PDT) Received: from PXLDJ45XCM.bytedance.net ([61.213.176.10]) by smtp.gmail.com with ESMTPSA id 98e67ed59e1d1-368edf7cbc2sm3098406a91.14.2026.05.13.06.20.58 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Wed, 13 May 2026 06:21:03 -0700 (PDT) From: Muchun Song To: Andrew Morton , David Hildenbrand , Muchun Song , Oscar Salvador , Michael Ellerman , Madhavan Srinivasan Cc: Lorenzo Stoakes , "Liam R . Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Nicholas Piggin , Christophe Leroy , Ackerley Tng , Frank van der Linden , aneesh.kumar@linux.ibm.com, joao.m.martins@oracle.com, linux-mm@kvack.org, linuxppc-dev@lists.ozlabs.org, linux-kernel@vger.kernel.org, Muchun Song Subject: [PATCH v2 48/69] mm/sparse-vmemmap: Inline vmemmap_populate_address() into its caller Date: Wed, 13 May 2026 21:20:13 +0800 Message-ID: <20260513132044.41690-2-songmuchun@bytedance.com> X-Mailer: git-send-email 2.50.1 In-Reply-To: <20260513132044.41690-1-songmuchun@bytedance.com> References: <20260513130542.35604-1-songmuchun@bytedance.com> <20260513132044.41690-1-songmuchun@bytedance.com> Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit vmemmap_populate_address() no longer has any callers that need the returned PTE. Its only remaining user just checks whether the call succeeded. Inline it back into vmemmap_populate_basepages() and return -ENOMEM directly on failure. Signed-off-by: Muchun Song --- mm/sparse-vmemmap.c | 46 +++++++++++++++++++-------------------------- 1 file changed, 19 insertions(+), 27 deletions(-) diff --git a/mm/sparse-vmemmap.c b/mm/sparse-vmemmap.c index 9811c92ad258..5d5cd5f73365 100644 --- a/mm/sparse-vmemmap.c +++ b/mm/sparse-vmemmap.c @@ -234,8 +234,8 @@ static pgd_t * __meminit vmemmap_pgd_populate(unsigned long addr, int node) return pgd; } -static pte_t * __meminit vmemmap_populate_address(unsigned long addr, int node, - struct vmem_altmap *altmap) +int __meminit vmemmap_populate_basepages(unsigned long start, unsigned long end, + int node, struct vmem_altmap *altmap) { pgd_t *pgd; p4d_t *p4d; @@ -243,32 +243,24 @@ static pte_t * __meminit vmemmap_populate_address(unsigned long addr, int node, pmd_t *pmd; pte_t *pte; - pgd = vmemmap_pgd_populate(addr, node); - if (!pgd) - return NULL; - p4d = vmemmap_p4d_populate(pgd, addr, node); - if (!p4d) - return NULL; - pud = vmemmap_pud_populate(p4d, addr, node); - if (!pud) - return NULL; - pmd = vmemmap_pmd_populate(pud, addr, node); - if (!pmd) - return NULL; - pte = vmemmap_pte_populate(pmd, addr, node, altmap); - if (!pte) - return NULL; - vmemmap_verify(pte, node, addr, addr + PAGE_SIZE); - - return pte; -} - -int __meminit vmemmap_populate_basepages(unsigned long start, unsigned long end, - int node, struct vmem_altmap *altmap) -{ - for (; start < end; start += PAGE_SIZE) - if (!vmemmap_populate_address(start, node, altmap)) + for (; start < end; start += PAGE_SIZE) { + pgd = vmemmap_pgd_populate(start, node); + if (!pgd) + return -ENOMEM; + p4d = vmemmap_p4d_populate(pgd, start, node); + if (!p4d) return -ENOMEM; + pud = vmemmap_pud_populate(p4d, start, node); + if (!pud) + return -ENOMEM; + pmd = vmemmap_pmd_populate(pud, start, node); + if (!pmd) + return -ENOMEM; + pte = vmemmap_pte_populate(pmd, start, node, altmap); + if (!pte) + return -ENOMEM; + vmemmap_verify(pte, node, start, start + PAGE_SIZE); + } return 0; } -- 2.54.0