From mboxrd@z Thu Jan 1 00:00:00 1970 Received: from mail-pf1-f170.google.com (mail-pf1-f170.google.com [209.85.210.170]) (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 7708A2C21C4 for ; Thu, 18 Dec 2025 17:48:00 +0000 (UTC) Authentication-Results: smtp.subspace.kernel.org; arc=none smtp.client-ip=209.85.210.170 ARC-Seal:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766080083; cv=none; b=jBBRO0heRNbmZ76tOWRxRyKIg+UBtMNwy1tA0zEcVr3DJ0LhnlMRmK0I8HPw7A8D1Lw3XL39eGmJ9gdxAYCvppVaxHWTcFL0afzYJQPyA++71m6CHwNHtrr3E6o3WL8aCzQFCwDMZl/psEjmOjlzUV5DAGGEC5uIpH6rAxfTSuc= ARC-Message-Signature:i=1; a=rsa-sha256; d=subspace.kernel.org; s=arc-20240116; t=1766080083; c=relaxed/simple; bh=NQp3i2eTUCVGBhEuaxCCFEKw8TPRsENjT5cgIgF6tfs=; h=From:To:Cc:Subject:Date:Message-ID:MIME-Version; b=Tba1qVfE4ipshFm3ZZeRWy4rfNY/5fxX52yLOCdvcfO6nI4Ko3kApjfXnWnkPz3bq67Xpv0diEVtMrsVbfng00A9C0Q53Q72ELkCMzG2ZcrRSaDOzLJe/zgwVc0HVORHeJg966Em5s5jDB56sf6+N6zgknUIOSv3Srf6Qky3hjg= ARC-Authentication-Results:i=1; smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com; spf=pass smtp.mailfrom=gmail.com; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b=LjSQNete; arc=none smtp.client-ip=209.85.210.170 Authentication-Results: smtp.subspace.kernel.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: smtp.subspace.kernel.org; spf=pass smtp.mailfrom=gmail.com Authentication-Results: smtp.subspace.kernel.org; dkim=pass (2048-bit key) header.d=gmail.com header.i=@gmail.com header.b="LjSQNete" Received: by mail-pf1-f170.google.com with SMTP id d2e1a72fcca58-7bb710d1d1dso1550402b3a.1 for ; Thu, 18 Dec 2025 09:48:00 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1766080079; x=1766684879; 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=Yvi6EEyWQGpmoQ+sKyKT1UGoOl5UFeYLCESoPn30Km8=; b=LjSQNeteI3bLH6I/6QLIJmE+D9k4rJBZif+Snc7shAmf/me9L5i23cSF+UhMv9PifU da3Pyr9Utups3HR/bsMw0dkJXg2pWjfTLp0XI84p5eiD/wICx5tNP15A6xYrPsvM79GN Bzfc1vD5rQIv6vQN3YSoY/1EurMWtIfJe7Wfch9yW0vQi29eNrvjB4GcH5yhFmGonvdh iuEnXDtiM0+e2dWpvrSxrZxi+qa6OGxqrZhvo75pOxRuE8Ban9Wh6MVz5lTnF2R7Y5dn gzMwBytT91MVQVqplRCbMinlRE7B4g9dCUqUkt1d42otWvswIU5Su1M613nEBV3+M7hD b1IQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1766080079; x=1766684879; 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=Yvi6EEyWQGpmoQ+sKyKT1UGoOl5UFeYLCESoPn30Km8=; b=T7ZcblrU9S2mTRtUbCWq/PVTiMyk4S1zukZo/IFK4mHU0TBjdwCfadnAtS+rh530vl O6mqpqDr045RYXwDZD4X5P1y0COxi+AUT9j4/AzRiM3Ge3UtM3UxV5QNIvShtv0519ye bmOpwD5wQCSD+ni+jRDhbG/vHkAX68PxlnCy4dLAfo1gx/Q3Y5qeOo7XrdEeS4uaekBJ RxBubwNk+3j1vk8+A4A5Sea6Pj90ixaw8Kx746wzT2okLu/kzIg32sim0AJEWyP0frqQ IW6Ho1Eoz729aWZaijzRrwrIG72sX7GOawo8z8GwN3xleWvh0fgz7jIkJ7sUMy+phF+W rNpg== X-Forwarded-Encrypted: i=1; AJvYcCXoWl8M6H2G5LStXKvISqqBbC+q3tPjSnHPeRPztqIsfXGjUFhzZ0pH1yBnbA7+d7UTVD9rNLphjK33v1k=@vger.kernel.org X-Gm-Message-State: AOJu0YwczHFfgG949L81XkqHeg9rSnw5j0XDSmA4BIPAniEnaeytcOGL jZ1/cZS+jCuLe6Gn8U+FjBGQgix9uGwK/3MtA3D5xyRq1ecbH58Ch4RI X-Gm-Gg: AY/fxX7n9KP28p1uGwZmM+KlD6X9M9DrrtL5XzelJ5nM34ZXQ8aloYHDbCisVnx3h4p oxSfhik0hxvXr84Ul4fU2vfsbMuKkQVpN87tRHq4lxAxat9FyJYnctduwm8YK588XSTQCG3Q24+ hLasPO+Pf/y3kjoBhDkd58BDC9OvuCUWImN0nH1fPcoxhUVSWqJKmhkc0vZ+3103Rm9jeqVQN2N kWnZb7oyb1/4cHRv8OI1/NYbd8JQNA7Y71+Sc+7hANGeX89oQlLja8sxOPOPYP5HzpQb5dN/LM3 CNFK9DRsU+sKVSC+ooBXGUPHmISvYapbQn6BmJ/e1IZC0qd3GuR/jHXTGs33yNZpMX+BUtjm/Yx fIHKAA/X/u8zI3pInO3BPovhI6bHgtMf67kldyVs6RedCLo8MAAmxBhVAB+7PJYNu9gZZBrpbie bn6DLrV+Fzikwb3gpONdr6gD2Z/TYbErADaSXD7wCIdVk= X-Google-Smtp-Source: AGHT+IFWmt4iH/1kf4fkAJoa+/tbrjhvDMeZi8TMTmoV9V69RJumexby9oqnT8yZuZgLFEmR98CpTQ== X-Received: by 2002:a05:6a20:72a4:b0:35d:cad7:cd63 with SMTP id adf61e73a8af0-376a8eb1773mr271781637.30.1766080079248; Thu, 18 Dec 2025 09:47:59 -0800 (PST) Received: from localhost.localdomain ([113.218.252.152]) by smtp.gmail.com with ESMTPSA id 41be03b00d2f7-c1d2fffa3e7sm2847400a12.24.2025.12.18.09.47.53 (version=TLS1_3 cipher=TLS_CHACHA20_POLY1305_SHA256 bits=256/256); Thu, 18 Dec 2025 09:47:58 -0800 (PST) From: chengkaitao To: davem@davemloft.net, andreas@gaisler.com, akpm@linux-foundation.org, david@kernel.org, lorenzo.stoakes@oracle.com, Liam.Howlett@oracle.com, vbabka@suse.cz, rppt@kernel.org, surenb@google.com, mhocko@suse.com Cc: kevin.brodsky@arm.com, dave.hansen@linux.intel.com, ziy@nvidia.com, chengkaitao@kylinos.cn, willy@infradead.org, zhengqi.arch@bytedance.com, sparclinux@vger.kernel.org, linux-kernel@vger.kernel.org, linux-mm@kvack.org, chengkaitao Subject: [PATCH v3 0/3] Generalize vmemmap_populate_hugepages to sparc Date: Fri, 19 Dec 2025 01:47:46 +0800 Message-ID: <20251218174749.45965-1-pilgrimtao@gmail.com> X-Mailer: git-send-email 2.50.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 Sparc implement vmemmap_populate using vmemmap_populate_hugepages to streamline the code. Another benefit is that it allows us to eliminate the external declarations of vmemmap_p?d_populate functions and convert them to static functions. Since vmemmap_populate_hugepages may fallback to vmemmap_populate- _basepages, which differs from sparc's original implementation. During the v1 discussion with Mike Rapoport, sparc uses base pages in the kernel page tables, so it should be able to use them in vmemmap as well. Consequently, no additional special handling is required. Remove unnecessary whitespace from sparc. Changes in v3: - Allow sparc to fallback to vmemmap_populate_basepages - Convert vmemmap_p?d_populate() to static functions - Split the v1 patch Changes in v2: - Revert the whitespace deletions - Change vmemmap_false_pmd to vmemmap_pte_fallback_allowed Link to V1: https://lore.kernel.org/all/20251217120858.18713-1-pilgrimtao@gmail.com/ Chengkaitao (3): sparc: Use vmemmap_populate_hugepages for vmemmap_populate mm: Convert vmemmap_p?d_populate() to static functions sparc: Remove unnecessary whitespace arch/sparc/mm/fault_64.c | 4 +-- arch/sparc/mm/hypersparc.S | 4 +-- arch/sparc/mm/init_64.c | 53 ++++++++++++-------------------------- arch/sparc/mm/io-unit.c | 12 ++++----- arch/sparc/mm/iommu.c | 2 +- arch/sparc/mm/swift.S | 2 +- arch/sparc/mm/ultra.S | 4 +-- include/linux/mm.h | 7 ----- mm/sparse-vmemmap.c | 10 +++---- 9 files changed, 36 insertions(+), 62 deletions(-) -- 2.50.1 (Apple Git-155)