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 DAD5EC02181 for ; Wed, 22 Jan 2025 12:49:45 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 5592D280003; Wed, 22 Jan 2025 07:49:45 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 50995280001; Wed, 22 Jan 2025 07:49:45 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 3A92A280003; Wed, 22 Jan 2025 07:49:45 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0011.hostedemail.com [216.40.44.11]) by kanga.kvack.org (Postfix) with ESMTP id 17195280001 for ; Wed, 22 Jan 2025 07:49:45 -0500 (EST) Received: from smtpin11.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay08.hostedemail.com (Postfix) with ESMTP id AFD74141625 for ; Wed, 22 Jan 2025 12:49:44 +0000 (UTC) X-FDA: 83035069488.11.FEB87AD Received: from NAM10-MW2-obe.outbound.protection.outlook.com (mail-mw2nam10on2047.outbound.protection.outlook.com [40.107.94.47]) by imf08.hostedemail.com (Postfix) with ESMTP id 99CFD16000E for ; Wed, 22 Jan 2025 12:49:41 +0000 (UTC) Authentication-Results: imf08.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=ebQlCOWa; spf=pass (imf08.hostedemail.com: domain of ziy@nvidia.com designates 40.107.94.47 as permitted sender) smtp.mailfrom=ziy@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Message-Signature: i=2; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1737550181; 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:content-transfer-encoding: in-reply-to:in-reply-to:references:references:dkim-signature; bh=QY7d3mSQ4Uu1UK2US4/k5AhuhKxVsrX3VKikLxuDwNY=; b=CfuPNtEd5QNlbN7lwozMu7NnvFBqDuoWkWAf0Uaz/VgKqiA+JRMy2ZiDQZ8ybAWEHK7DlU Xcsxfir23Xkxax51jm/rMKn7iMEgGP4GU7yN8+vLrevtF/yv3YRLGDJabIiWhxjdkKljQR WCTBUFA87POpVMiTC+3gQjd7ZfZ62i4= ARC-Authentication-Results: i=2; imf08.hostedemail.com; dkim=pass header.d=Nvidia.com header.s=selector2 header.b=ebQlCOWa; spf=pass (imf08.hostedemail.com: domain of ziy@nvidia.com designates 40.107.94.47 as permitted sender) smtp.mailfrom=ziy@nvidia.com; dmarc=pass (policy=reject) header.from=nvidia.com; arc=pass ("microsoft.com:s=arcselector10001:i=1") ARC-Seal: i=2; s=arc-20220608; d=hostedemail.com; t=1737550181; a=rsa-sha256; cv=pass; b=d2tatGU9jpWBWuH9tOd9buNtMSu4k/AGl+FlV8N7Z1qaZOdGSXBP88GqMzr5K0AHMQYqeV 9mnC2T4juNzXFDyrF4aFDnWgC8H5F9QiQsqx6gjX8tr1NHnN1rgIfzKWC6gmoAUQEjfCof 4geSu6c/0GjpMBVWQhdcEBohZRYrueI= ARC-Seal: i=1; a=rsa-sha256; s=arcselector10001; d=microsoft.com; cv=none; b=fC8w6WvxuCu67BcPWruZCvNwqY0rB4zMSBt8VyPLHRAemK39x/JW77cqAZ8f7vv82oz+RE3T5JwexyGArDpoDzLFqwtrcV7Og+IF4QTLQjUE9fNudNFYT+Pe8irPdBBbswh1DA5+8WAEYeVy42efJaqjngiMvZs8S/m36OeggRbiLb4QL/ek5OZZwU52E2UbaCqXPZcVz2ia9NEhffvcUX9n/PYslIpoFBpLf+Qnlrt0Ja7SdnSofsXEUViq3u93Eyq6HzdvRCHxSBJJGmWOrUfug9mrf93ZocAoRG2aIBlQyd+MQtXsGHBjkTCEDxnjVNZHY8Vv2XbDn/DKOPbVXQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=microsoft.com; s=arcselector10001; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-AntiSpam-MessageData-ChunkCount:X-MS-Exchange-AntiSpam-MessageData-0:X-MS-Exchange-AntiSpam-MessageData-1; bh=QY7d3mSQ4Uu1UK2US4/k5AhuhKxVsrX3VKikLxuDwNY=; b=k7N1AICzqEVNsrLGB66EwQsx7fOCBvUN/bwM2jXT0nI7ZtUiJRYF2YWdECHNt3kv50f46gaciFXw+G+Lns8mCuQKs5YdYq1XsPa/rViK+6RAA8W4tv2bowygsaZAOt400nyWg1SdfXn7mVhBzLuL7tOmtt4KeucYubfGBRno60pq3bm/B4KlSXiGa0NVQgloRTEaiqSLKNmw+LU/r5s04lD3Zt5x07zxA3FCdSRcvj/sfigwGq7JH5FPB6MaU4sWf9QiUIpx8vgWJNcPyPsHnGB21cupAFeXHqbeCPqu8ytXPDzM3n5dfGas5p6sAHw4PCQc8hYxPco2yqGxmxYHHg== ARC-Authentication-Results: i=1; mx.microsoft.com 1; spf=pass smtp.mailfrom=nvidia.com; dmarc=pass action=none header.from=nvidia.com; dkim=pass header.d=nvidia.com; arc=none DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=Nvidia.com; s=selector2; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=QY7d3mSQ4Uu1UK2US4/k5AhuhKxVsrX3VKikLxuDwNY=; b=ebQlCOWaKGWsB02w6KdR/xlebMzuxthpihUT9mDAoVPWbLwRaj7FLefg23pvQ7aCN5hkt+Nsg8F4bKVYGdST5tWScMcmhbYNBvCsprTf9v4+8KLt2O1e/URmv4yF9LsVPKdvha5drY84X3zkbR7ha332IVYZQwIMmoAwrEaDllPB2oPDkjwjWNG+7IzP/9en/nOoyXjxTEPzQaVfHOQimqbEqyrELACm2VhYveT7ffN+KSQPJe1tEpjm3vrNuUHSvd6TAjZREZF+sAYxAzh691VowAI/m1ioWFx9lHAYD3CeZwe6imxbzCKymraTt8u7+aq5NpcWGeJGaz+D8ZdPGQ== Received: from DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) by MN2PR12MB4334.namprd12.prod.outlook.com (2603:10b6:208:1d1::10) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.8377.17; Wed, 22 Jan 2025 12:49:37 +0000 Received: from DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::5189:ecec:d84a:133a]) by DS7PR12MB9473.namprd12.prod.outlook.com ([fe80::5189:ecec:d84a:133a%5]) with mapi id 15.20.8377.009; Wed, 22 Jan 2025 12:49:37 +0000 Content-Transfer-Encoding: quoted-printable Content-Type: text/plain; charset=UTF-8 Date: Wed, 22 Jan 2025 07:49:35 -0500 Message-Id: Subject: Re: mm: CMA reservations require 32MiB alignment in 16KiB page size kernels instead of 8MiB in 4KiB page size kernel. Cc: "Barry Song" <21cnbao@gmail.com>, , , , , , , "Jann Horn" , , , , , "Suren Baghdasaryan" , "Kalesh Singh" , "T.J. Mercier" , "Isaac Manjarres" , , To: "David Hildenbrand" , "Juan Yescas" From: "Zi Yan" X-Mailer: aerc 0.19.0 References: <463eb421-ac16-435c-b0a0-51a6a92168f6@redhat.com> <8f36d3ca-3a31-4fc4-9eaa-c53ee84bf6e7@redhat.com> <6d13a5e9-bdff-435b-ad7a-3a3a550738b0@redhat.com> In-Reply-To: <6d13a5e9-bdff-435b-ad7a-3a3a550738b0@redhat.com> X-ClientProxiedBy: BN9PR03CA0648.namprd03.prod.outlook.com (2603:10b6:408:13b::23) To DS7PR12MB9473.namprd12.prod.outlook.com (2603:10b6:8:252::5) MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-TrafficTypeDiagnostic: DS7PR12MB9473:EE_|MN2PR12MB4334:EE_ X-MS-Office365-Filtering-Correlation-Id: 805d4753-a67d-46b9-48dd-08dd3ae33ab8 X-MS-Exchange-SenderADCheck: 1 X-MS-Exchange-AntiSpam-Relay: 0 X-Microsoft-Antispam: BCL:0;ARA:13230040|366016|1800799024|376014|7416014|7053199007; X-Microsoft-Antispam-Message-Info: =?utf-8?B?NHZrS0ZDalZXSGgwWTBLMEZjek8xTmZldUtUWW9ycjZ4bUx3R01oeVVqKzFJ?= =?utf-8?B?b3JYWEc2eWhvK3ExZHVSK2VqdmVEYXk0T3VIUkUwY1hLU1VZTU5yVUtHZ1po?= =?utf-8?B?cExPbURmNHdzNm1HaXI5WVkvbGF2MFk5aXR2MzQ3M3R1L2FwUERxejRFdHZ6?= =?utf-8?B?d3I3NWw1ZXVsMFRYL2JCQ0VsaDlUU0RQTEZXbUF5M2cwQmcxV3ZiWHEvQmI2?= =?utf-8?B?MWh1ekJ1c1dKaEZCOU1oL3hvVU56MDJGR0lTcVRPTHZ0QnpGWUZLUllnRnpj?= =?utf-8?B?NlRkYm93RHRoemh4ZDg1QTk4SWRFM0NwbVZrcTk3aENaNVE3dmJibVNEcjlD?= =?utf-8?B?dUY1S1hSM1JvdVdpbVczQ0ExaEJpM1BkdHdORjRRM01IaSt3QmdkMmpPVmUv?= =?utf-8?B?TjhCUFRycDdWNmxBN3dWZFZtWTBFMHB4QllmTjhBUjd6NXVDMFNUSExiMUtQ?= =?utf-8?B?ZWw4dEFwdVZzRGU3Ky9mREJqVVJyUVR2Q2VURWMvaUU1RXFjd091NUFUbEZ5?= =?utf-8?B?N3pKdFJ6bVBFLzF1TU5oc2hwUG11VS9id09NamcxUVdXdUFVK1JCckVhWXR6?= =?utf-8?B?SW5qWURpRGVkSllFRExvYmhyWktQNmFxYXlXTUh2NUVOMk1RVSszSmpBbnBh?= =?utf-8?B?dlhybENRM096NktqbmM1U015S1BzTjlKbk1ydENTM2o4Wi9ZbTVDZCsrSGx4?= =?utf-8?B?SzIxVUFHdGRGRTBRTVVuL1BPSlFraVZTSC9WNzVSaFhWYVNDblE2NEFjYWhR?= =?utf-8?B?QWZkVmtyaHhUL0loaDEyYWVQY1lGTVUycFdKdDgycjFrVHdpOVZUS1JKb05v?= =?utf-8?B?bU1hZXVneGVLZFZoY3ZRQzJpYmJkWXJrdDNubjZ0UksyRkhUSE5mTWVNejNX?= =?utf-8?B?R0lOb3p2bXBlNzNYTUNoTUdZNmdLSXlybmZzVFdUUjA1ZVNyMHNKRzhLMGY0?= =?utf-8?B?clYrdGpwUUdRbmI5cXM2VXRmRkdjbkZXQm9xRTlRY09jY0dTTVRRL3R6a0lz?= =?utf-8?B?WW41MGRzbjhpaFhOZDhBcTFvaVNocFIxUDZmTzBKbjlyNEYvbWFxV0RRN0o4?= =?utf-8?B?YXJsNnRzVWRqcUFMb29tajJIR0lObUlNREdnTHMrVnUyam9HSlg1eCttSXJa?= =?utf-8?B?eW9oeVZCZnpvaU5nNlp2SFpGODVPL2hTZmZLdlExanAxb0loNXg1QTFLR0hz?= =?utf-8?B?TklLTTNZR3NQVy92dUduVmw0VWpXUUo4Skp3ZGxhaEhrU3ZZSzBsZjkwZzBT?= =?utf-8?B?STZDNTBtNHJmMkV2NnVwd25iVURCbDdWL1AwQnZQUW8xUXZxSVVlNWJMSGlT?= =?utf-8?B?ZXhEN0p0WS9ZM1VBQXN6b0ZhY1ZtU2pBUDRGMlJNSnFzNm9rVW1HV0tEWnF2?= =?utf-8?B?MitkUzRYekxERG83VlBTNHNmNFUrUjNobHJiY3ZZdTl1a2ZSQURYUjlNeTNn?= =?utf-8?B?SklRbWl4ajl6dTY1aGg0c1JGencvaVBKdlpON1FEUkxXaXg2ekY1TnN2N2Nj?= =?utf-8?B?Sk1mVkhqOHN2cWR3THhkcm1oYkpMNUlhUy9BMEEwWWhRMnJwd3Y4MGdtSDJa?= =?utf-8?B?eUZOTDV5bmcwVStDaHdXcFkzUFBoekRuV0F3RVBaczhKWCs4N3h0QzVHR2ty?= =?utf-8?B?VWFJSmFmbnIyMWtUaDA3dC9ZOEFWZmdNL1hNTFFjbERUVldyRXREV01CbnRR?= =?utf-8?B?cFNGRHRBdXhmc21jekk2SDlJMTBmQnVFWC8xdDZ5bXpxYTJyTFhDWGoya21w?= =?utf-8?B?eDc2OWJac25OYWFYeDdYSm9yZ1c1VUtEOHZZYnVsL3g0aldaSmVaeDU2aVBP?= =?utf-8?B?aThOaEt4cE1xRzdlbEx5SXR6R1FFUzFhQWFuR3A2OTNZeEJNc2NGc1lRZXJ5?= =?utf-8?Q?Qq68w+0Cd4qFE?= X-Forefront-Antispam-Report: CIP:255.255.255.255;CTRY:;LANG:en;SCL:1;SRV:;IPV:NLI;SFV:NSPM;H:DS7PR12MB9473.namprd12.prod.outlook.com;PTR:;CAT:NONE;SFS:(13230040)(366016)(1800799024)(376014)(7416014)(7053199007);DIR:OUT;SFP:1101; X-MS-Exchange-AntiSpam-MessageData-ChunkCount: 1 X-MS-Exchange-AntiSpam-MessageData-0: =?utf-8?B?UjhxbmdSUHlTemV3OWJMMmtZSVdyREQxVldxQW9sTFNLVEQvSUp0VUhGVGdu?= =?utf-8?B?K08rbnRIdnN4a0U5NUNkdFlUOER2SkpMMjhqV2JRNXhTbU5QTDk4SWFINDds?= =?utf-8?B?ZDdiOTRLREZpSTVGYjJNQmNOdmRONWlTdmowU2UySWoxeisvdFNWUS9uZ3lC?= =?utf-8?B?d0hqaU5sbEhZK0J3VXpXQU8ySDV3VmhzbTFxUVBIMUkyemlHeXFkMVNZVm5s?= =?utf-8?B?Vk1BZ21PU3BLRVJ0UTlOL1hkcGtSMzQwZThwQUs1N3hmNFFkRFhvT1BHSWNp?= =?utf-8?B?OEZqekw3R0pvdjJLaVBUb0EySm14ZGhBTU84L0VmeDFqOEZkYk1GMWNQcTFZ?= =?utf-8?B?UWQ4NFpNaE9yaVREdEplYy92dFY4djFjaDY5czJsRndmTEhqWksxZzQ4cmt3?= =?utf-8?B?WXdudUZUMEFUS0pSZ1Y5ZElZSENhbXZSRW5TajBmeUZkVzVaM1gxSXZ0M2p4?= =?utf-8?B?eGt5SGRUTUhMSkZUSGw0RXhEWTNRNStCMTVnU09kc3MyQ2lpWHlHOHJPdHNz?= =?utf-8?B?L25ocDhBZlRXdFpCRTh0VUJ0TXBoMXg1Q0NtQjBQS201N0Vpa1BRTWJTUGJH?= =?utf-8?B?YUFRa0RNUWI5VVRkOGFBeDRlcUlsaGhpTkNJZEFXRzVVZmpya2RwME9lSUxp?= =?utf-8?B?R3hzdmtJWHhHY1BNVVFEQ0xaeXljZGdXTzhqMGhvai9YWTV6NlZGUmcyNUE2?= =?utf-8?B?SytBVzFmcDRnanB5b0xGK2lHR2p5OHVHVXBtUlBEMVZJaTZVbzdQNk1jc2Zi?= =?utf-8?B?ODVTemRIVWVpYkZzMFFrdnFQdXpkdjVhUERXTDMxWG1BREppaDBJMHNYM0xX?= =?utf-8?B?d3RNRjJ1c3NFcVg1UkpMK0ZsWm1kaSsvVUczZXNhYTBuRDltdS8rekRTL1kz?= =?utf-8?B?VTlmazVQZHp1YVg3aVhZUlg5QnhxMURhOEkyZzIzbkVLT0FjZXZrbXcxQ0tB?= =?utf-8?B?bGMzNUpvNURxMG12clRhbXMySFBadVAxSmU5eFZUbERJZitXaC9EcXlhT3dj?= =?utf-8?B?N0I5TS9wM3hmYm1BK1JYQ2IyVklKVjB6ODhRWnVKZEh0c2VJbDhDL0NUWjQy?= =?utf-8?B?aHU4RVEvcFpGaXFqUVJsNlgxcE0xU3hkS0tFUGtBTHVPbmplUXhFVTBHbDYx?= =?utf-8?B?Tll5em9vL2NYWkFESWpLUVk3S0hrNzEzZmxuN2tPSGsrNW8rT2QwRXUzMkxY?= =?utf-8?B?Q3BkSWZ0Q0p5WjdmQTRTK2N6b0I5UkJhZ1lLTXA5U3FIaU1oclp6bGhJVzQ4?= =?utf-8?B?aHBTUFE5eUxXUzh1UUxuaDR2dHJaVk1vdjFBT2NCMUN5L0NQdjE2MDRCbFc5?= =?utf-8?B?Wml1SU9HbkN0cXVVWkNNdGMrY2hOMENiZkdHNm0rb2xaZ3FrZ1o1a2VRTVl6?= =?utf-8?B?NDBNeUtQbVQ3eFVTMXl5MEpxOGpUeTg0dE91STdsZVgyZVFOeDl2eVlTck5F?= =?utf-8?B?M3BJOUM2a1NZaGU2ZXBBdjhrSU5RM3lkck0rY1JFWHRaSjZVUU43V2RVZm02?= =?utf-8?B?Q2l3Z0I1UmJiVmZzYUJ2OUZ0REcwNk5ReFM1dGdyeTFYTDFiTlFrYVFrN1pt?= =?utf-8?B?c25xTXZQVytaelZReTZwM2tWb1RHSWxrL1pQNGFMTkNtaXBxODNFTGJBa3R5?= =?utf-8?B?N0NTeDVUcThkWHBtTFY4ZnVod2duTFowVTgrbzlNaUQ2eE9KdnNrbTkwanA3?= =?utf-8?B?bXFzaThSVit5SlNrRUdlOW40T3MzSm5uVzZtdTRaQjJnRmxmTHltTGtORkp2?= =?utf-8?B?VkJvTllNVmNOTTR6ekV2MXpZQU1FN0JLY1hTeW5ha0Z0V3BVUytJNzEya0RE?= =?utf-8?B?ZGxabFJ5eERiMHRPeEkySjFPdkI5YUlJS1RiSWpBc2I0aXRKUnZUeGx2MTRN?= =?utf-8?B?S3JyRFBzQ3R1SEdVQ1l1VGxMTHRZcXFoZ290d0NUazBsUE5QQWcza2lxY0hM?= =?utf-8?B?eVhteTIzeFBxelpkTFM2ZEZ2RmYrNlRaeDU1KzVuYTVxcjFSNTUxdUNJNzZv?= =?utf-8?B?NVE2SFhiM2VRVkFUT3VNUzVxOTZIQ0pCZkQwbGhYZzBFV3Zvenc0NW8wc0lv?= =?utf-8?B?L2pNNEUzOFZnYTkxNFFmYkFrNElwN1lzZHBnWnFvZHdudGhCKzRneFM4eHNL?= =?utf-8?Q?NjvexAhk+tlNr3DDzmHtcsQCZ?= X-OriginatorOrg: Nvidia.com X-MS-Exchange-CrossTenant-Network-Message-Id: 805d4753-a67d-46b9-48dd-08dd3ae33ab8 X-MS-Exchange-CrossTenant-AuthSource: DS7PR12MB9473.namprd12.prod.outlook.com X-MS-Exchange-CrossTenant-AuthAs: Internal X-MS-Exchange-CrossTenant-OriginalArrivalTime: 22 Jan 2025 12:49:37.4627 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-CrossTenant-Id: 43083d15-7273-40c1-b7db-39efd9ccc17a X-MS-Exchange-CrossTenant-MailboxType: HOSTED X-MS-Exchange-CrossTenant-UserPrincipalName: gsQPogoYovTtZ/515wb/yHyL5uwjIM+aJPtqz6T2y1X1kmDToC5XNYChJyhX9oTR X-MS-Exchange-Transport-CrossTenantHeadersStamped: MN2PR12MB4334 X-Rspamd-Queue-Id: 99CFD16000E X-Rspam-User: X-Rspamd-Server: rspam11 X-Stat-Signature: 6ya3akng8mofjazet7rc8e4ng59kcsny X-HE-Tag: 1737550181-800178 X-HE-Meta: U2FsdGVkX1/NisvopZI5OKJl0rqBiQJikhmFWY4ToHsNMuKplDXRfhhSmwYeVAAjLcgE+LsxBibyypPCjK5i0nyLdBMOlX049SVpcOJLOv+7ukuYOnxEoVL664U0Q/z698tqsqZ0G8hdUe0UGou6gW/NqqxO76SaWJHMEDwoAZFd6i5BESTi+sIjF+ytLtfcMbwncBCSUFV8B9mWqj9fXQ7A2nmhjsEwXoQc2g6xh5GnMUQUwnyrUVF+GOsfkqecE9uxNsez7H1767GxbO2qWsp5BFXOZH4zkc8vCxQNkNabw3jya8+jT9XSl4rIQv32D8kkxtUw2vnwM78GCd7q1kDpBaa7NV4M+DkQ8zdAbrDqn6lZGMKtt/25jJHDgTKi1Z2gi4EVuoob37/HLarN9FmHiggPQo0Cd9mGhNW1BdPMtbbycKN9OlENJLpEJRmSqbHe9w1cykLL4IAoPmr44KVPLMPpecAL2t+rcJ2jgajoAZhG+R9eyvVLZAHNBZtHfBMY5/uYjkN5NZed810uhc/bRasvxh5Bw6VNoKjWP9arqk8xtg1UC8/1x1iz9ucd5dVoKMQLLMUZe2JxJrbyE9hsq7T3qAsn52QW1/FyyvSoyr6AEXr0rR4J0xhj2ulMZRSdnXXb7QzB65TTCDdNRvtU8HuCaZrRvqqqxcKXv133bWNu6Jmefh2XNO2Uc5CrnCYIMWyZJS7ei26WOVhmAjXyTcN9DrGmSv1OwsCvALt3/CN83EOXU50Pmx2IeS34ADTm3vnNtkTea6S3Ut/L3Dzzxd13jygidepydZM1rYgFwCz/wacb42b/msj+bK5HbFyUT67ZFNP+BYqwKfuS1b4pBnMttjOvGHixn3REOS52U0UYucVtNxz9Wp97x4A1KPdqs4UCzB364H25TAzA76yKkNUK3k8D4gjjd4CgesbhIzafPgUFZ2nWQZl3vt6MiS6nAKu0W47B0ZAMg52 wEQ7DhJ5 ZuGeoRacjPGyAA/dzgK/pR6oQGWZb7hYgE+0PwLpTkFr15QLU2yjZV6e775JEzZ1exqdRLpWTarhuNeKSMrho5N6QiVngCAgcZ+5d0MRdschiyo1x1fkDDMNMcXVjnOhylwyt3dj/mEYZwbJp+bjX8ihy6gjXyKvyffMH+Q8ZH4Q+Kh/9yO+QpRveTTGw9cvYh7TraXOgrufIY8Ff4ifn0u7R9/Vj0Fy96iWVrQ5f/dZiZifSrmwKevtxRsppz7lgrd3nNpa4TrGP3CcioYBrZK3Vhhvzja08l1twSOZgDKeSWnPBWZgpdxm7Rmhg5/Z7yGg9GGI32xlN0GRMaI0K4FYB8u8l9AGVwCNL 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 Wed Jan 22, 2025 at 3:11 AM EST, David Hildenbrand wrote: > On 22.01.25 03:24, Zi Yan wrote: >> On Tue Jan 21, 2025 at 9:08 PM EST, Juan Yescas wrote: >>> On Mon, Jan 20, 2025 at 9:59=E2=80=AFAM David Hildenbrand wrote: >>>> >>>> On 20.01.25 16:29, Zi Yan wrote: >>>>> On Mon Jan 20, 2025 at 3:14 AM EST, David Hildenbrand wrote: >>>>>> On 20.01.25 01:39, Zi Yan wrote: >>>>>>> On Sun Jan 19, 2025 at 6:55 PM EST, Barry Song wrote: >>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> >>>>>>>>>>>> However, with this workaround, we can't use transparent huge p= ages. >>>>>>>>>>>> >>>>>>>>>>>> Is the CMA_MIN_ALIGNMENT_BYTES requirement alignment only to s= upport huge pages? >>>>>>>>> No. CMA_MIN_ALIGNMENT_BYTES is limited by CMA_MIN_ALIGNMENT_PAGES= , which >>>>>>>>> is equal to pageblock size. Enabling THP just bumps the pageblock= size. >>>>>>>> >>> >>> Thanks, I can see the initialization in include/linux/pageblock-flags.h >>> >>> #define pageblock_order MIN_T(unsigned int, HUGETLB_PAGE_ORDER, MAX_PAG= E_ORDER) >>> >>>>>>>> Currently, THP might be mTHP, which can have a significantly small= er >>>>>>>> size than 32MB. For >>>>>>>> example, on arm64 systems with a 16KiB page size, a 2MB CONT-PTE m= THP >>>>>>>> is possible. >>>>>>>> Additionally, mTHP relies on the CONFIG_TRANSPARENT_HUGEPAGE confi= guration. >>>>>>>> >>>>>>>> I wonder if it's possible to enable CONFIG_TRANSPARENT_HUGEPAGE >>>>>>>> without necessarily >>>>>>>> using 32MiB THP. If we use other sizes, such as 64KiB, perhaps a l= arge >>>>>>>> pageblock size wouldn't >>>>>>>> be necessary? >>> >>> Do you mean with mTHP? We haven't explored that option. >>=20 >> Yes. Unless your applications have special demands for PMD THPs. 2MB >> mTHP should work. >>=20 >>> >>>>>>> >>>>>>> I think this should work by reducing MAX_PAGE_ORDER like Juan did f= or >>>>>>> the experiment. But MAX_PAGE_ORDER is a macro right now, Kconfig ne= eds >>>>>>> to be changed and kernel needs to be recompiled. Not sure if it is = OK >>>>>>> for Juan's use case. >>>>>> >>> >>> The main goal is to reserve only the necessary CMA memory for the >>> drivers, which is >>> usually the same for 4kb and 16kb page size kernels. >>=20 >> Got it. Based on your experiment, you changed MAX_PAGE_ORDER to get the >> minimal CMA alignment size. Can you deploy that kernel to production? >> If yes, you can use mTHP instead of PMD THP and still get the CMA >> alignemnt you want. >>=20 >>> >>>>>> >>>>>> IIRC, we set pageblock size =3D=3D THP size because this is the gran= ularity >>>>>> we want to optimize defragmentation for. ("try keep pageblock >>>>>> granularity of the same memory type: movable vs. unmovable") >>>>> >>>>> Right. In past, it is optimized for PMD THP. Now we have mTHP. If use= r >>>>> does not care about PMD THP (32MB in ARM64 16KB base page case) and m= THP >>>>> (2MB mTHP here) is good enough, reducing pageblock size works. >>>>> >>>>>> >>>>>> However, the buddy already supports having different pagetypes for l= arge >>>>>> allocations. >>>>> >>>>> Right. To be clear, only MIGRATE_UNMOVABLE, MIGRATE_RECLAIMABLE, and >>>>> MIGRATE_MOVABLE can be merged. >>>> >>>> Yes! An a THP cannot span partial MIGRATE_CMA, which would be fine. >>>> >>>>> >>>>>> >>>>>> So we could leave MAX_ORDER alone and try adjusting the pageblock si= ze >>>>>> in these setups. pageblock size is already variable on some >>>>>> architectures IIRC. >>>>> >>> >>> Which values would work for the CMA_MIN_ALIGNMENT_BYTES macro? In the >>> 16KiB page size kernel, >>> I tried these 2 configurations: >>> >>> #define CMA_MIN_ALIGNMENT_BYTES (2048 * CMA_MIN_ALIGNMENT_PAGES) >>> >>> and >>> >>> #define CMA_MIN_ALIGNMENT_BYTES (4096 * CMA_MIN_ALIGNMENT_PAGES) >>> >>> with both of them, the kernel failed to boot. >>=20 >> CMA_MIN_ALIGNMENT_BYTES needs to be PAGE_SIZE * CMA_MIN_ALIGNMENT_PAGES. >> So you need to adjust CMA_MIN_ALIGNMENT_PAGES, which is set by pageblock >> size. pageblock size is determined by pageblock order, which is >> affected by MAX_PAGE_ORDER. > > Yes, most importantly we must not exceed MAX_PAGE_ORDER. Going smaller=20 > is the common case. > >>=20 >>> >>>>> Making pageblock size a boot time variable? We might want to warn >>>>> sysadmin/user that >pageblock_order THP/mTHP creation will suffer. >>>> >>>> Yes, some way to configure it. >>>> >>>>> >>>>>> >>>>>> We'd only have to check if all of the THP logic can deal with pagebl= ock >>>>>> size < THP size. >>>>> >>> >>> The reason that THP was disabled in my experiment is because this >>> assertion failed >>> >>> mm/huge_memory.c >>> /* >>> * hugepages can't be allocated by the buddy allocator >>> */ >>> MAYBE_BUILD_BUG_ON(HPAGE_PMD_ORDER > MAX_PAGE_ORDER); >>> >>> when >>> >>> config ARCH_FORCE_MAX_ORDER >>> int >>> ..... >>> default "8" if ARM64_16K_PAGES >>> >>=20 >> You can remove that BUILD_BUG_ON and turn on mTHP and see if mTHP works. >>=20 >>> >>>>> Probably yes, pageblock should be independent of THP logic, although >>>>> compaction (used to create THPs) logic is based on pageblock. >>>> >>>> Right. As raised in the past, we need a higher level mechanism that >>>> tries to group pageblocks together during comapction/conversion to lim= it >>>> fragmentation on a higher level. >>>> >>>> I assume that many use cases would be fine with not using 32MB/512MB >>>> THPs at all for now -- and instead using 2 MB ones. Of course, for ver= y >>>> large installations it might be different. >>>> >>>>>> >>>>>> This issue is even more severe on arm64 with 64k (pageblock =3D 512M= iB). >>>>> >>> >>> I agree, and if ARCH_FORCE_MAX_ORDER is configured to the max value we = get: >>> >>> PAGE_SIZE | max MAX_PAGE_ORDER | CMA_MIN_ALIGNMENT_BYTES >>> 4KiB | 15 | 4KiB >>> * 32KiB =3D 128MiB >>> 16KiB | 13 | 16KiB >>> * 8KiB =3D 128MiB >>> 64KiB | 13 | 64KiB >>> * 8KiB =3D 512MiB >>> >>>>> This is also good for virtio-mem, since the offline memory block size >>>>> can also be reduced. I remember you complained about it before. >>>> >>>> Yes, yes, yes! :) >>>> >>=20 >> David's proposal should work in general, but will might take non-trivial >> amount of work: >>=20 >> 1. keep pageblock size always at 4MB for all arch. > > My proposal was to leave it unchanged for most archs, but allow for=20 > overriding it on aarch64 as a first step. Got it. Makes sense. > > s390x is happy with 1MiB, x86 with 2MiB. It's aarch64 that does=20 > questionable things :) > > CONFIG_HUGETLB_PAGE_SIZE_VARIABLE already allows for variable=20 > pageblock_order. That whole code likely needs some love, but most of it=20 > should already be there. > > > In the future, I could imagine just going for a smaller pageblock size=20 > on aarch64, and handling fragmentation avoidance for larger THPs (512=20 > MiB really is close to 1 GiB on x86) differently, not using pageblocks. Right. That is what I meant by "...compaction, to work on a different range, independent of pageblock". But based on Juan's reply[1], 32MB PMD THP is still needed for the deployment. That means "the future" needs to be done to fully satisfy Juan's needs. :) --=20 Best Regards, Yan, Zi