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 A53C9C5B543 for ; Tue, 10 Jun 2025 15:16:52 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 27F886B0089; Tue, 10 Jun 2025 11:16:52 -0400 (EDT) Received: by kanga.kvack.org (Postfix, from userid 40) id 2302C6B008C; Tue, 10 Jun 2025 11:16:52 -0400 (EDT) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id 11EFF6B0092; Tue, 10 Jun 2025 11:16:52 -0400 (EDT) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0013.hostedemail.com [216.40.44.13]) by kanga.kvack.org (Postfix) with ESMTP id EAC496B0089 for ; Tue, 10 Jun 2025 11:16:51 -0400 (EDT) Received: from smtpin14.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay04.hostedemail.com (Postfix) with ESMTP id 8AF001A0690 for ; Tue, 10 Jun 2025 15:16:51 +0000 (UTC) X-FDA: 83539843422.14.342F803 Received: from mail-ej1-f47.google.com (mail-ej1-f47.google.com [209.85.218.47]) by imf20.hostedemail.com (Postfix) with ESMTP id 843A51C000C for ; Tue, 10 Jun 2025 15:16:49 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=GR6v5lp1; spf=pass (imf20.hostedemail.com: domain of usamaarif642@gmail.com designates 209.85.218.47 as permitted sender) smtp.mailfrom=usamaarif642@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1749568609; 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=ytfxy1F91/6XXoUwKvCD7IATlqB9CgwhEYIH06zF7vg=; b=oOcfOH5U3KMEM092UFOo+FXv7PBQe9TjaPcZTVBOlCYpEywVSuXg1vfsNA+/U3rdRK6OdQ /fXE8FznxCX8sVRctK++1NP4j3nF54HDf0zhkzvw/mVnYeCN/b2GN7PytZjskbrhmjNd85 d7SJQizov5wfuvL5OWMB+mUwwMJ+YVM= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=gmail.com header.s=20230601 header.b=GR6v5lp1; spf=pass (imf20.hostedemail.com: domain of usamaarif642@gmail.com designates 209.85.218.47 as permitted sender) smtp.mailfrom=usamaarif642@gmail.com; dmarc=pass (policy=none) header.from=gmail.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1749568609; a=rsa-sha256; cv=none; b=vVZicvZ7vXCFvGSOPULQMisBCmb4XV0uXj7YYZe3yDsXjkCTYFhEkUojhht8fdNtasE4ey 9pN0De//7hKefqH2msbD5CzpyuEo8wMu9n0yfZFSa4wegRKtiWNJn/l9JvpaJEECltn42K dZPSUejhvTed09ftMPwzcgwiOfcGNNQ= Received: by mail-ej1-f47.google.com with SMTP id a640c23a62f3a-adb5cb6d8f1so893335466b.3 for ; Tue, 10 Jun 2025 08:16:49 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20230601; t=1749568608; x=1750173408; darn=kvack.org; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :from:to:cc:subject:date:message-id:reply-to; bh=ytfxy1F91/6XXoUwKvCD7IATlqB9CgwhEYIH06zF7vg=; b=GR6v5lp1qJ0OEJkLpHHw+J9CpMFsy1K9x1N/BzcIgfUxIEQogaDj4Hy+EhKnpAkdeE 4b5UaG9QGmp2bGmsuoIIdKauZilC9sOFIRMd0U6FxWYlQZD/5bYUiSwsAQYJgbpY+Jec UexQHmBzAySH4MgNWfaUyCauPLDExtHNvKaMu/7WtLV6fzusq1GDBQP29L+tkdwfNNIE A8phBWDX7qsLHv04FJ30ga2LHrMp3Om/WUvx7RFOqmN4MpNQmcPABfs1pfA1QK0+PTFN EwbJkMS0cqwxQotl7hWZdHtepGGvs1O7Q1D4kKnNYFUf1Ld4UKoZkwmr+8txtVv/FpFo 13tQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1749568608; x=1750173408; h=content-transfer-encoding:in-reply-to:from:content-language :references:cc:to:subject:user-agent:mime-version:date:message-id :x-gm-message-state:from:to:cc:subject:date:message-id:reply-to; bh=ytfxy1F91/6XXoUwKvCD7IATlqB9CgwhEYIH06zF7vg=; b=nGzAkpZZo218azBPW3CW9WfGb6bobRkxNBm6DYdQ7NJgs0daaqiSfR8QhS3vrFMGIh /15G5fq7mmCnVd++OyOMF3hWi+/vJOsESbjCvvuK4WwG409Ewuw5ytSycJlgVNeu5bUT v9yXcxQ2FWiWm2j6wbjM1TnhdIz4ucfTqWojwq0rr2/7x0NAG+mDio9yE/LanyjdO3uR g8SfEnV5GZKDooKNkXnGdgzxXr7NDoXDB8/JIyQXbX2e/2BbETNo0jQs95PXBobwxXIC joBlWH3h6nfNymDAL/Bxagb7PTsZZ2YgbHZRUDJ0/fDRQ5mlMtrN5MP37MBLufQVBmDu Rdyg== X-Forwarded-Encrypted: i=1; AJvYcCUAss3lNP4b9jWArtIUBz7GoCHwgGbnj/QRif5jbvCH9upL87qBee7/yud8VA9C95jXA+bdVvHYlw==@kvack.org X-Gm-Message-State: AOJu0YzGBN0sg/d4VtpQ9hD3s2KE7eIxB0FnWABReU+Z8yaV6wkh/DI0 EEf2VrZNV42oaRpfi5p+axIfGj5TCBzRQy0Wamumq3/bT3xH0NE+aVcMRDZASA== X-Gm-Gg: ASbGncseHWyhfO0eaA6De7gfnEIoksXU0f4QWpK4Fb7AIuTedJ4WGxHtIJn3TVaZ2Tl hAxoldSLFVybffLzPgQl4CLdYLt/8zbBYALPmt5AXqIUYRIS/MgWy5wV1JhGqjhpXisPvuqqC2p eu3X+RCvHdEUtshQrEhExj48V164JX2Z5lqIFldOnPM2SWRdp1lPjKJZtRfVdGqBjmTOWFpDF/m n/9iiM5WIgTO8oGs1MMJEsvUzKzMKtY2iWUlMurQq9JwJSZ14PZXOBoUaoNc34HM+rComYRBWxz WBYiK8jxWWUYRzYwM6RVOFaX+Iv7SPQm6A/VC9xmSgyumf6v9qVTQqdMHYV1rj+PA2lBwJWd9QL UCNrXwAgzlNlLw2wqR3pFaiV4xj+0IJDXR7MwfG8qLyc= X-Google-Smtp-Source: AGHT+IF/eSu5QqSR/oHteTbpJTYOs9uEQ5oS/WYmrUNW42bFe8vizpo1YLaaPgHkosNoBYLfa6VdUA== X-Received: by 2002:a17:906:c10d:b0:ad8:8945:8374 with SMTP id a640c23a62f3a-ade1abebae5mr1460765766b.61.1749568607761; Tue, 10 Jun 2025 08:16:47 -0700 (PDT) Received: from ?IPV6:2a03:83e0:1126:4:c2f:a34:6718:ee1d? ([2620:10d:c092:500::7:b9b7]) by smtp.gmail.com with ESMTPSA id a640c23a62f3a-ade1dc1c800sm735176366b.79.2025.06.10.08.16.46 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Tue, 10 Jun 2025 08:16:47 -0700 (PDT) Message-ID: <7b16ed90-659f-45b4-83e9-62781e5460a6@gmail.com> Date: Tue, 10 Jun 2025 16:16:46 +0100 MIME-Version: 1.0 User-Agent: Mozilla Thunderbird Subject: Re: [RFC] mm: khugepaged: use largest enabled hugepage order for min_free_kbytes To: Zi Yan , Lorenzo Stoakes Cc: david@redhat.com, Andrew Morton , linux-mm@kvack.org, hannes@cmpxchg.org, shakeel.butt@linux.dev, riel@surriel.com, baolin.wang@linux.alibaba.com, Liam.Howlett@oracle.com, npache@redhat.com, ryan.roberts@arm.com, dev.jain@arm.com, hughd@google.com, linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org, kernel-team@meta.com, Juan Yescas , Breno Leitao References: <35A3819F-C8EE-48DB-8EB4-093C04DEF504@nvidia.com> <18BEDC9A-77D2-4E9B-BF5A-90F7C789D535@nvidia.com> <5bd47006-a38f-4451-8a74-467ddc5f61e1@gmail.com> <0a746461-16f3-4cfb-b1a0-5146c808e354@lucifer.local> <61da7d25-f115-4be3-a09f-7696efe7f0ec@lucifer.local> <2338896F-7F86-4F5A-A3CC-D14459B8F227@nvidia.com> <46F6B7C4-542C-4310-9C70-F7469B151C7C@nvidia.com> Content-Language: en-US From: Usama Arif In-Reply-To: <46F6B7C4-542C-4310-9C70-F7469B151C7C@nvidia.com> Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 843A51C000C X-Rspamd-Server: rspam03 X-Rspam-User: X-Stat-Signature: fydww8wcoqia74a8hz3z8imjieudd3ae X-HE-Tag: 1749568609-277811 X-HE-Meta: U2FsdGVkX1/rQaZjY2dj58OKl7KMsz3JRGChboVvm+1oWeWQjY/LGYkgQD1Iqf9vGwmXtTZe9YO8pc/yfvXJ5bAp9iDpdSKlPqdL8SKvPi3kiSMfP/DzKPKEi+mHNRyz8EQWhVbsuyMcyJHx99dS6cDGjbfDYgGpvJVrz169bBPXHu7aTyd9T983hQPe+AN5Ap8nIWPlsnFX5U4RPhRZQ6kDBEdn2ulBXvnJenL4CxwPlK5AVnAtX2sSblui4fNPPziVBjTV/zacVPId5z0pGmWky3PNplfeBjdXAb1KOMxWmv5gX43/J8OKPnw3dI7sW2P/EZIox8aFUnOAWE1MVyRUOM3Gur22zETXyifK4Bl6e0o2dEzGa+cVW5q76yb85MKbhFRxbU+aqSKb6nGfhO7gc2amI49TPTIlmTje9+J1xQQKN1xtgrPT62dCJnzi5HdV9ULfUQhMxP5CmPOFEWfB/oaOaUidiOIJTCCJ8aom82erKhxNyEqC2Kk38G4SwB61vVUz6sFafQH5Hk4tyjeAXfyA8mV4GUdneg9RpwoyT+sr6+wBMmRb2lsY9W2mPXdPpGhk5wAZY/M5G3z6gdVo50dAI98Q+efDjQnfIyyTsHH3Rq52K7pXDwDvHl7FFnoSlnPqLkUAdIGhrsfYNg7b8bd8fIC8aFDd1Hs9c3ooc3jIJC8gXQL/r1Q8ObfTJg/KGEKeWC1uC4vPtx7IhOdo0oXE6GNFiH+8RsmRtj1asGIJ4IO0bKNpD9nlXCUUNqZoXWtZqaL3aQ5XfqF3TfXTbe5E0hH3mFRsEpThhznAgbugfzjhNBUSR+p8oROQk39h7FumNgyjp63j6xWTyF+KQFetlRMpmNi2aTcbluTCwjc5XSmSEuUnMD0tcmuVFCygR3pd7BAtALgyxcflVoKBY9jcppuWIJfq2hdmwXfw/zvb8pOeEuyzEO7L8Z5babl0JnpfHC4NVTVE//a LBk2fRyZ 5GfQT2es7YN1kv+SfAp7Wtisat9fZdNfoE9PZMXAI0RnN1J8tCFfvx/rEzMxAWnddx2b5VqXJ7Fq4HNeltHR3PdTx1ndvxEVWE/gbERFx/pRJEXCoXwLqzSwfFo+q7M1Wyaf5eU0N5VQhNvuuRK124D4WBDS6p/ywlhmySZ2j/mwy6tC4MKTV7X2IBDuh4vtV1gSEIrtBR6d6N0CZIt1DbTMnCgk7taYePuHyAaYDFhR4op/6LU+DPF+wMh1sNC1MuXWa5QDNEDNQB0gNNdyBAW6QqbS3eq8jvco+lALSGlTM8vnhQJnePn+0MwvO2bSQk3PbRQCCUYAHMVOWYlW5EclXKRFfWr1YxQxhbhJ/ornv5FBG4GwbKl1cwWpLksxx1bekaJG4MjQIgVd+UVDgVnh8FUr79VOSz9ZA4TLOaoDdbBFCg63cI1ZnVoXgUZeSuYd074aqw88IzsmMgOKXO0Ewt5vVd7KQjYm3IrkV8Rgk4kDn4JoTm8yuicnan9HlVgeE72HanJv0Vk0O1ZykiQ/veC7dNjPXHfb0 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 10/06/2025 15:20, Zi Yan wrote: > On 10 Jun 2025, at 10:03, Lorenzo Stoakes wrote: > >> On Mon, Jun 09, 2025 at 03:49:52PM -0400, Zi Yan wrote: >> [snip] >>>> I really think a hard cap, expressed in KB/MB, on pageblock size is the way to >>>> go (but overrideable for people crazy enough to truly want 512 MB pages - and >>>> who cannot then complain about watermarks). >>> >>> I agree. Basically, I am thinking: >>> 1) use something like 2MB as default pageblock size for all arch (the value can >>> be set differently if some arch wants a different pageblock size due to other reasons), this can be done by modifying PAGE_BLOCK_MAX_ORDER’s default >>> value; >> >> I don't think we can set this using CONFIG_PAGE_BLOCK_MAX_ORDER. >> >> Because the 'order' will be a different size depending on page size obviously. >> >> So I'm not sure how this would achieve what we want? >> >> It seems to me we should have CONFIG_PAGE_BLOCK_MAX_SIZE_MB or something like >> this, and we take min(page_size << CONFIG_PAGE_BLOCK_MAX_ORDER, >> CONFIG_PAGE_BLOCK_MAX_SIZE_MB << 20) as the size. > > OK. Now I get what you mean. Yeah, using MB is clearer as user does not > need to know page size to set the right pageblock size. > Just adding it here for completeness, but we could do something like below probably or use PAGE_SIZE_64KB instead of ARM64_64K_PAGES. Although it will be messy, as you would then need to do it for every arch and every page size of that arch. diff --git a/mm/Kconfig b/mm/Kconfig index 99910bc649f6..ae83e31ea412 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -1023,6 +1023,7 @@ config PAGE_BLOCK_MAX_ORDER default 10 if ARCH_FORCE_MAX_ORDER = 0 range 1 ARCH_FORCE_MAX_ORDER if ARCH_FORCE_MAX_ORDER != 0 default ARCH_FORCE_MAX_ORDER if ARCH_FORCE_MAX_ORDER != 0 + default 5 if ARM64_64K_PAGES help The page block order refers to the power of two number of pages that are physically contiguous and can have a migrate type associated to >> >>> >>> 2) make pageblock_order a boot time parameter, so that user who wants >>> 512MB pages can still get it by changing pageblock order at boot time. >>> >> >> Again, I don't think order is the right choice here, though having it boot time >> configurable (perhaps overriding the default config there) seems sensible. > > Understood. The new pageblock size should be set using MB. > >> >>> WDYT? >> >>> >>>> >>>>> >>>>> Often, user just ask for an impossible combination: they >>>>> want to use all free memory, because they paid for it, and they >>>>> want THPs, because they want max performance. When PMD THP is >>>>> small like 2MB, the “unusable” free memory is not that noticeable, >>>>> but when PMD THP is as large as 512MB, user just cannot unsee it. :) >>>> >>>> Well, users asking for crazy things then being surprised when they get them >>>> is nothing new :P >>>> >>>>> >>>>> >>>>> Best Regards, >>>>> Yan, Zi >>>> >>>> Thanks for your input! >>>> >>>> Cheers, Lorenzo >>> >>> >>> Best Regards, >>> Yan, Zi > > > Best Regards, > Yan, Zi