From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pl1-f182.google.com (mail-pl1-f182.google.com [209.85.214.182]) (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 159252CCB9 for ; Sat, 4 Apr 2026 07:17:34 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.214.182 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775287056; cv=none; b=MtMn+pDsq7p3L208BcQhlNmrJ5UsEDayMUbbtzAIsgSuRB/OdmhbCr6G4PajZb1TA6eHi7Ss4g/9bExQPftBFzFURqYdEwL0rhJbrztC3DO/dw7HXcowsuRIGzg7yPimAXQ3WSRGg1Aiv+gNNgOmlCG2LHo7x8utlNu+GkLY2DA= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1775287056; c=relaxed/simple; bh=gRo1lRle8QYwvb7+ytargpCfHq76BR2Kzkumqys+pZE=; h=From:To:Cc:Subject:Date:Message-Id:MIME-Version; b=u+Gv54q0ImCmBz72VlTdzvYxZVE5CLZXkEpINVOEKEyDNzLXGvZptX5f7v8Gn/yynS4oVUOdtw6l1n71J9ZU4sT5+E0usAiwgB2dUzN6ka1QusG4bIChfIUpSincuEYgmCYzpZbQbmX3wPj6HCIF0OC958fUSCevE7SagwXfLXo= 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=bb8eb65R; arc=none smtp.client-ip=209.85.214.182 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="bb8eb65R" Received: by mail-pl1-f182.google.com with SMTP id d9443c01a7336-2ad9f316d68so10337145ad.2 for ; Sat, 04 Apr 2026 00:17:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance.com; s=google; t=1775287054; x=1775891854; darn=vger.kernel.org; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:from:to:cc:subject:date:message-id:reply-to; bh=vxHSxQTiSROLSCEz/HR/Hur/9my7UlNa+rqcrvgfgaw=; b=bb8eb65R8GYl2y1uDO+Z8I4TFHFADQ5ENe2V76qEcWnrQhBLnmkGkSEmuAKAvvOXMN TZ3EADMxvoOVF6nidq4ZF+xlxa1E9IyHuvpVp142e/V4cToDE07lYsKntfhlT5xc3a6Q wtJN18Z/2eiLjPCPuiqStsdEf0sP+wXxglyh0UdTmvfkQiq7abhziZiY14tNlG9+QfNP 8l959J3lgEu+ICtS8pQMS5yjZtl0YWYFl8qsvnpAyDKlEA8qax3UeFo6D0caPJF2wDRU A2LBYalBoYXGsm2KXbddUba5Nu7umRu6Re2ksHWaHS9vrcJ5TkdtpHxwe4Vj25PGlvH9 ODng== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20251104; t=1775287054; x=1775891854; h=content-transfer-encoding:mime-version:message-id:date:subject:cc :to:from:x-gm-gg:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=vxHSxQTiSROLSCEz/HR/Hur/9my7UlNa+rqcrvgfgaw=; b=qsr+KdPIBn3WgMT3n+6v00mlrOi+Z6NcRYbX2ZNribttUdyovoB/nwzdgiVFqXgt3H uAXQQwZJpPIn/PtjZYmXvS1ox2cPMbbKBxABgRi1uxDooh5i2v3cLU3IClrZIR+fPkMU Qewk8sNEEl7yPbx21w7w4jeUqYDIgPQMC6VY6uMdvfCB7MBmNZNk9dVKralGMA/FpppN 0TeqJh1eYsMwVB6YXrmdt7+HlAfTvLrJ6F30U+diRv8jo9rD94uaqQlgBX2V0fO7Z7xq slBy+zNaPE+JsnmMvz8N0+NagnRPF9ztFvv54RUZSWTG1hNhjdnIAkzdqg2F4TjXbXqy T7XA== X-Forwarded-Encrypted: i=1; AJvYcCWzR6LQ8dqFTUPwAJT6baPs5A94p7PguJ1bso2L/mHUWNV7z2iI8a1kf7oWDzPB9W3LU9b7AP/8tx83wdM=@vger.kernel.org X-Gm-Message-State: AOJu0Yxeztpsa8wZagfTUrQR9OqUMdouA6VXEWRcFcZPFCrdWcDabagD jcD5xWrF1AU/I74k3o+XWv/8+aFKEstpnpONalj8qPCM6zEWnqyhQ26MRr9yf4qcP8c= X-Gm-Gg: AeBDievRLYEw1RQdHpENRX0k0AFr9nUTO9mUyewJQ1odcjXE1wqzSkfyi3EBSPQsAG/ SpJAqGt1UrV0oorTydalQVJL+zkKl+Vrb/i430F/sG+uo2x8n3eALjR/p6VvVQ0NtJgGz7js2TJ d5dKN7Im9SJGODMcNm1587NcNkkrUSXGKhzWHup5rJgKZrIDnOfgF5eYTDrp9f5QTzd+m4Ptprl 8ZAsVrEI9kk79I+wu5sk4voWFjiRWhNibRp9ogQkDkrBkp64ADXP+5kNkv6B4FyTwYVU0zQcdTz Yvr1QXbGg+B5+I5RRE0IDQLwjbwXRB2DXl7XessCS1FeXh+WJ0ez4/lbDhSNWLctZEtvy5ds/3S zmWp8aEIke1luo91+Y8cgp87J5kNwtIa/CE9AHOZxM2T1qosSPJladyHnJYUIhgZ04XnMrV3Nod o4RDN8xSijiiv2FXZIm+uLih1jEiIW2nI+mfzmGbbPh+8AEB+bXl/GpQ== X-Received: by 2002:a17:903:2808:b0:2b2:539b:d29a with SMTP id d9443c01a7336-2b28178ad30mr37104585ad.23.1775287054199; Sat, 04 Apr 2026 00:17:34 -0700 (PDT) Received: from n232-176-004.byted.org ([36.110.163.99]) by smtp.gmail.com with ESMTPSA id d9443c01a7336-2b274979525sm94675115ad.45.2026.04.04.00.17.24 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Sat, 04 Apr 2026 00:17:33 -0700 (PDT) From: Muchun Song To: Catalin Marinas , Will Deacon , Huacai Chen , Paul Walmsley , Palmer Dabbelt , Albert Ou , "David S. Miller" , Andreas Larsson , Andrew Morton , David Hildenbrand Cc: Muchun Song , Muchun Song , WANG Xuerui , Alexandre Ghiti , Lorenzo Stoakes , "Liam R. Howlett" , Vlastimil Babka , Mike Rapoport , Suren Baghdasaryan , Michal Hocko , Ryan Roberts , Kevin Brodsky , Dev Jain , Anshuman Khandual , Yang Shi , Chaitanya S Prakash , Yuquan Wang , Petr Tesarik , Austin Kim , "Vishal Moola (Oracle)" , Junhui Liu , "Matthew Wilcox (Oracle)" , Alex Shi , Chengkaitao , linux-arm-kernel@lists.infradead.org, linux-kernel@vger.kernel.org, loongarch@lists.linux.dev, linux-riscv@lists.infradead.org, sparclinux@vger.kernel.org, linux-mm@kvack.org Subject: [PATCH 0/5] mm/sparse-vmemmap: provide generic vmemmap_set_pmd() and vmemmap_check_pmd() Date: Sat, 4 Apr 2026 15:17:04 +0800 Message-Id: <20260404071720.3577290-1-songmuchun@bytedance.com> X-Mailer: git-send-email 2.20.1 Precedence: bulk X-Mailing-List: linux-kernel@vger.kernel.org List-Id: List-Subscribe: List-Unsubscribe: MIME-Version: 1.0 Content-Transfer-Encoding: 8bit The two weak functions vmemmap_set_pmd() and vmemmap_check_pmd() are currently no-ops on every architecture, forcing each platform that needs them to duplicate the same handful of lines. Provide a generic implementation: - vmemmap_set_pmd() simply sets a huge PMD with PAGE_KERNEL protection. - vmemmap_check_pmd() verifies that the PMD is present and leaf, then calls the existing vmemmap_verify() helper. Architectures that need special handling can continue to override the weak symbols; everyone else gets the standard version for free. This series drops the custom implementations in arm64, riscv, loongarch, and sparc, replacing them with the generic implementation introduced in the first patch. Muchun Song (5): mm/sparse-vmemmap: provide generic vmemmap_set_pmd() and vmemmap_check_pmd() arm64/mm: drop vmemmap_pmd helpers and use generic code riscv/mm: drop vmemmap_pmd helpers and use generic code loongarch/mm: drop vmemmap_check_pmd helper and use generic code sparc/mm: drop vmemmap_check_pmd helper and use generic code arch/arm64/mm/mmu.c | 14 -------------- arch/loongarch/mm/init.c | 11 ----------- arch/riscv/mm/init.c | 13 ------------- arch/sparc/mm/init_64.c | 11 ----------- mm/sparse-vmemmap.c | 7 ++++++- 5 files changed, 6 insertions(+), 50 deletions(-) -- 2.20.1