Message ID | 20250224165603.1434404-16-david@redhat.com (mailing list archive) |
---|---|
State | New |
Headers | show
Return-Path: <owner-linux-mm@kvack.org> 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 AB15FC021BC for <linux-mm@archiver.kernel.org>; Mon, 24 Feb 2025 16:56:53 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id 1EB6D280005; Mon, 24 Feb 2025 11:56:44 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id 19BB6280002; Mon, 24 Feb 2025 11:56:44 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id E961F280006; Mon, 24 Feb 2025 11:56:43 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0012.hostedemail.com [216.40.44.12]) by kanga.kvack.org (Postfix) with ESMTP id BBF88280002 for <linux-mm@kvack.org>; Mon, 24 Feb 2025 11:56:43 -0500 (EST) Received: from smtpin21.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 811C016199B for <linux-mm@kvack.org>; Mon, 24 Feb 2025 16:56:43 +0000 (UTC) X-FDA: 83155442286.21.A6D6CD4 Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf20.hostedemail.com (Postfix) with ESMTP id 01CDA1C0011 for <linux-mm@kvack.org>; Mon, 24 Feb 2025 16:56:40 +0000 (UTC) Authentication-Results: imf20.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=K23DX1+w; spf=pass (imf20.hostedemail.com: domain of dhildenb@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhildenb@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=hostedemail.com; s=arc-20220608; t=1740416201; 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=hjQ9M+/7gFJUkrRnlhRJAIZPqjntNNCFGRlUUDQiAps=; b=67fm98yHbwIOuIzaVVf0hiILErcmdIgmRYjxpMGcJofL9hQleGvUphUEUEiTMZSKKMnfxt N+a8RLM9tI06msFP4I7RZBzZnFtU7itj3xb97OFmHP6PMtKTtDVyKMFb5cKvqXtMBOXbFF d7iyWDSCgszkHQ36/50oACi/LHqTpE4= ARC-Authentication-Results: i=1; imf20.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=K23DX1+w; spf=pass (imf20.hostedemail.com: domain of dhildenb@redhat.com designates 170.10.133.124 as permitted sender) smtp.mailfrom=dhildenb@redhat.com; dmarc=pass (policy=none) header.from=redhat.com ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740416201; a=rsa-sha256; cv=none; b=NSHx9NDXGIhXsIXhPaDtm0lGzqQ0YzRmC9E9k65GuZOHgFMWS25759MKyZE+IqwxIaNuRu su41k/oiSppoiUW/iC7J77FslAtuFnMjriVgrcf6xYasaTrMv6UiOPbsOLlUEl6bzQEQ+E u9vkHGRjP+U19g7iFHxL53zb+FY3vGM= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1740416200; h=from:from: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; bh=hjQ9M+/7gFJUkrRnlhRJAIZPqjntNNCFGRlUUDQiAps=; b=K23DX1+wKWeoHVKP/Vt9RrRBmmHILu9upGVmJWzTLOYRbKWIqO0aaUWQMX4khqVjrq499T Rja011ctVvelU5sV5/G8AgOfg/KDYbMJvVDvHkMEgI04LdV5/kCxEBY7db+DyF3Tp2fHAg 7hy5Cp2W8/Zn2R4xWvuS3al29AFdEHE= Received: from mail-wr1-f69.google.com (mail-wr1-f69.google.com [209.85.221.69]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-616-KLDAaWfsO2ih0-4hV9Ymww-1; Mon, 24 Feb 2025 11:56:38 -0500 X-MC-Unique: KLDAaWfsO2ih0-4hV9Ymww-1 X-Mimecast-MFC-AGG-ID: KLDAaWfsO2ih0-4hV9Ymww_1740416197 Received: by mail-wr1-f69.google.com with SMTP id ffacd0b85a97d-38f255d44acso2001194f8f.0 for <linux-mm@kvack.org>; Mon, 24 Feb 2025 08:56:38 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740416197; x=1741020997; h=content-transfer-encoding:mime-version:references:in-reply-to :message-id:date:subject:cc:to:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=hjQ9M+/7gFJUkrRnlhRJAIZPqjntNNCFGRlUUDQiAps=; b=Y9nuZoFxmhyadu7pGUvKvYLUt038m2nQTVXot7kbew55ae0dHt0PKnrYAy9GTBCFeQ Zxmihk3eMVT+kyJhoSPs216qHs/ajmCLYJJkPFWrDMHKW2eG3Hgffxf5O9ukvbPer1YF 8upEeuP9emUUYAkXae4k21mSPDg0YkJedPIkt7PvhF3qIJMlNwudamZBZcL5K3DIpCuN JT0uH06O6/7cdPHzOfIXFKynDtKr7AWoRGTgaxjooqFsT/KQ6imu6SflkX15ahbI1Hwt niaqOotTcmdjAamYX+MMu56a8HqofqDcjVTbtdPZtNWEQaR0Hm/y5E57HY9Kqf/+0c9V FqDg== X-Forwarded-Encrypted: i=1; AJvYcCWM/QVMQKUGWtU3hNB/Fyx1//oyEOmgCLA4AQng5RSBZ94S2xOvU6e1runqefOQTAhV1XO0CWD1fg==@kvack.org X-Gm-Message-State: AOJu0YwbI/QqwnE7ENxwucSvzoa9/XXXVR3mvt5MK6f/UpcTuC9G2ZL7 JzWjjHOvIUGd4oC/Zp5SORM+e8EsF2mT7jeLgppi95BAOhqun4E+0j+vCXZyDNTQSe60IaVXRny QG7UAPD9TRl+0Lft1jSBicjM+FXTSpGX62AdcwYWqg5jSaBLo X-Gm-Gg: ASbGncuWlTDueIIJbXUpEJQGqdq0VRxmlh2JkmxDuzq3iwPaTVwEY8FBYmc7C/lHUJG /ORz9Tpk+DjcZrsWWPrXPEY09cIt0+5GZDn1bTdSThZy0CpHcKXE+ayhytAEUvgW7RZ3NP5Gpdg J4KMvQuz7pDfee8D2q+nskaf/OcCY049LiSAsuYWejUsOkPwqFgA+bb6KMia1K1DKCpiadiTjIQ n6tPpgghvrYqvQ8cfo6bFnOatIoM+4Y/Ld7e+LLlSObn40XhAQsxxuueGIgCsm3+kum8DzMHxz0 miGDB4KmuAwWrP7gLvOXohlU/xv0qkaJ9Q3xz/KjGQ== X-Received: by 2002:a05:600c:154b:b0:439:9f19:72ab with SMTP id 5b1f17b1804b1-43aa6d14bf5mr34158735e9.23.1740416197419; Mon, 24 Feb 2025 08:56:37 -0800 (PST) X-Google-Smtp-Source: AGHT+IHJ9sKTQ3EBTX4dQr6LdeGl2B92vuZUpZDHC83nbKU72kdYMMOPYVrf72peoEztlZbl1dnGRA== X-Received: by 2002:a05:600c:154b:b0:439:9f19:72ab with SMTP id 5b1f17b1804b1-43aa6d14bf5mr34158365e9.23.1740416197028; Mon, 24 Feb 2025 08:56:37 -0800 (PST) Received: from localhost (p4ff234b6.dip0.t-ipconnect.de. [79.242.52.182]) by smtp.gmail.com with UTF8SMTPSA id 5b1f17b1804b1-439b02d519dsm109604025e9.11.2025.02.24.08.56.35 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 24 Feb 2025 08:56:35 -0800 (PST) From: David Hildenbrand <david@redhat.com> To: linux-kernel@vger.kernel.org Cc: linux-doc@vger.kernel.org, cgroups@vger.kernel.org, linux-mm@kvack.org, linux-fsdevel@vger.kernel.org, linux-api@vger.kernel.org, David Hildenbrand <david@redhat.com>, Andrew Morton <akpm@linux-foundation.org>, "Matthew Wilcox (Oracle)" <willy@infradead.org>, Tejun Heo <tj@kernel.org>, Zefan Li <lizefan.x@bytedance.com>, Johannes Weiner <hannes@cmpxchg.org>, =?utf-8?q?Michal_Koutn=C3=BD?= <mkoutny@suse.com>, Jonathan Corbet <corbet@lwn.net>, Andy Lutomirski <luto@kernel.org>, Thomas Gleixner <tglx@linutronix.de>, Ingo Molnar <mingo@redhat.com>, Borislav Petkov <bp@alien8.de>, Dave Hansen <dave.hansen@linux.intel.com>, Muchun Song <muchun.song@linux.dev>, "Liam R. Howlett" <Liam.Howlett@oracle.com>, Lorenzo Stoakes <lorenzo.stoakes@oracle.com>, Vlastimil Babka <vbabka@suse.cz>, Jann Horn <jannh@google.com> Subject: [PATCH v2 15/20] mm: CONFIG_NO_PAGE_MAPCOUNT to prepare for not maintain per-page mapcounts in large folios Date: Mon, 24 Feb 2025 17:55:57 +0100 Message-ID: <20250224165603.1434404-16-david@redhat.com> X-Mailer: git-send-email 2.48.1 In-Reply-To: <20250224165603.1434404-1-david@redhat.com> References: <20250224165603.1434404-1-david@redhat.com> MIME-Version: 1.0 X-Mimecast-Spam-Score: 0 X-Mimecast-MFC-PROC-ID: CkztnpdganP7C7nT07uLNWb6LZhDgSTzuB2U-pIZKDk_1740416197 X-Mimecast-Originator: redhat.com Content-Transfer-Encoding: 8bit content-type: text/plain; charset="US-ASCII"; x-default=true X-Rspam-User: X-Rspamd-Queue-Id: 01CDA1C0011 X-Stat-Signature: d91uftu4qonw51sierrjm9t41wmbz7rd X-Rspamd-Server: rspam03 X-HE-Tag: 1740416200-466626 X-HE-Meta: U2FsdGVkX1895Gha4LKgzyxoCx+VamQhlY81V4y1aWqWiGWu44JitucaGbR9ZiPf+f9XmsPd9W/ekr1r169ibTuAJWh72r3nPSmMDubYvfEWG9MI7R1OYK3r+JqJrJ+/dvrUKAJhnttu0aHBo/VhUM/i9d3NiGMwMYzPj/Zv+AMDUBbMIU7mz85r7akUoA1tzlK204di5T6R8N0COkBnI1u7vCQ8n3QCE20PMh08osF1ZoDA4fmybclhgP1ABqYrfBXe4MXgUto7NIFcSHXXBXZN0GXddf4efiz//mgGvqWrPsBdqvz94fMGDJWECZUln7MIf/oKDukvIjHEFXHqIhKD5TWQVOnw/vAyokrV0Tcn5nsXqH3ztk3HGAApK5pA7TLD9MK5jTz1DJk2kiFVsqddG/ZWep2nhdzc/jVCLm8o5+q48YN3hmK3clBU+Nhrw+cnsJhrU4W44yAeJy/rg/whqJxK1nlL23NDqs50692/1qwAlkDRDjuoAI7uEEqQifI9YQJ7pdzh4DEOxIcNF8ZyKx8nYCYoko5BdccoTJN1favfMMV35avPC1AoxlTpcsHX2VK382kz3iAoMMU8xaVCQD7tOySGhVy+R+X6W9E9sq9x/00o2p9kL4yM2/pRYmRX0dR7YErvx0/G+OVQQCe+YzLzAjyNdms9+GAmhFhjOXyQ1H8OznBavfycNnRRPSMS3Ob+Wm7jUAGYvdyuo/lExgyXspxAcE/X8ynuh4bdg1QjkBs6aJ2N4wmiBMRqMimixEfgDVifoPjfXomnmKhxI4FtGxWlcBfiNmlGjZB7i9sUa7/kWJBt7LtfBCmpHve6zaOzwavc3BWCPr6VOdVhM2gHyrb/a2reXHArLT8/oGRAZgHqXWQKHus2nJkZM0h/5wR2yhM4Uw3B2LWOy/E/6fybZp7eq0nc5enGjIi+4+4Vh3W+inB6QtBNY+js3IiWrNVXiqv3GkT02y+ AdAVhQIm dbLvjn8hmxt3+ByJeFIw4GHwBUfn+B7BJ5dtvw1z9qxEIH+3yMED1dFeRklbndbF8xLhZvZnAG6DUalB/QZy8ecI8IEiy9hL+6/249chIgRRawVeTtfy9QUTOvaStBtn1p26Tzk2ZQtF0dkBFrNZrD88o9mj8Y79lWa7fVdsyuuFZfIw4KKOKsnKPtfB8yHFrTaa5c5Hb8RkX6KwTYsegExZNLHiq5TtHis1YtTzaFuZGavJZdhsh/LljykzerwxpIYA2ZBOpQtmXXURSvNTGdLXpxLukJ3hJ0nXNJJawkv8MPtgaw62aprIgkNK71HKnu8l/GAr8UQbNx9hdfXVNg51Q8EIsHdMMAQY7eGgQUWb00hiaETsDB6PTGqsjnO65wsG8EqNE4tGhhKRzec0GZHEDQn2kASpAghhx6a2RYB611PkUKwpv1j7y9+OykMtOqxj2PcDc9TPn84ZB+90cDt2Ux8BVEf8LDICeXMT98AYfnQykA5UVrsXRrqDeYzcOSYTQEg+Dvs/+5VPrj3O5QjWGfhX73o2cHBFO+tim+kcnz0o= 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: <linux-mm.kvack.org> List-Subscribe: <mailto:majordomo@kvack.org> List-Unsubscribe: <mailto:majordomo@kvack.org> |
Series |
mm: MM owner tracking for large folios (!hugetlb) + CONFIG_NO_PAGE_MAPCOUNT
|
expand
|
diff --git a/mm/Kconfig b/mm/Kconfig index af72fe92f96b0..64bb80a281dd9 100644 --- a/mm/Kconfig +++ b/mm/Kconfig @@ -889,8 +889,26 @@ config READ_ONLY_THP_FOR_FS support of file THPs will be developed in the next few release cycles. +config NO_PAGE_MAPCOUNT + bool "No per-page mapcount (EXPERIMENTAL)" + help + Do not maintain per-page mapcounts for pages part of larger + allocations, such as transparent huge pages. + + When this config option is enabled, some interfaces that relied on + this information will rely on less-precise per-allocation information + instead: for example, using the average per-page mapcount in such + a large allocation instead of the per-page mapcount. + + EXPERIMENTAL because the severity of some of the implications first + have to be understood properly. + endif # TRANSPARENT_HUGEPAGE +# simple helper to make the code a bit easier to read +config PAGE_MAPCOUNT + def_bool !NO_PAGE_MAPCOUNT + # # The architecture supports pgtable leaves that is larger than PAGE_SIZE #
We're close to the finishing line: let's introduce a new CONFIG_NO_PAGE_MAPCOUNT config option where we will incrementally remove any dependencies on per-page mapcounts in large folios. Once that's done, we'll stop maintaining the per-page mapcounts with this config option enabled. CONFIG_NO_PAGE_MAPCOUNT will be EXPERIMENTAL for now, as we'll have to learn about some of the real world impact of some of the implications. As writing "!CONFIG_NO_PAGE_MAPCOUNT" is really nasty, let's introduce a helper config option "CONFIG_PAGE_MAPCOUNT" that expresses the negation. Signed-off-by: David Hildenbrand <david@redhat.com> --- mm/Kconfig | 18 ++++++++++++++++++ 1 file changed, 18 insertions(+)