Message ID | 20250224165603.1434404-2-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 63364C021BC for <linux-mm@archiver.kernel.org>; Mon, 24 Feb 2025 16:56:16 +0000 (UTC) Received: by kanga.kvack.org (Postfix) id D5A656B0082; Mon, 24 Feb 2025 11:56:15 -0500 (EST) Received: by kanga.kvack.org (Postfix, from userid 40) id D0ACA6B0083; Mon, 24 Feb 2025 11:56:15 -0500 (EST) X-Delivered-To: int-list-linux-mm@kvack.org Received: by kanga.kvack.org (Postfix, from userid 63042) id BAC586B0088; Mon, 24 Feb 2025 11:56:15 -0500 (EST) X-Delivered-To: linux-mm@kvack.org Received: from relay.hostedemail.com (smtprelay0015.hostedemail.com [216.40.44.15]) by kanga.kvack.org (Postfix) with ESMTP id A00C06B0082 for <linux-mm@kvack.org>; Mon, 24 Feb 2025 11:56:15 -0500 (EST) Received: from smtpin07.hostedemail.com (a10.router.float.18 [10.200.18.1]) by unirelay07.hostedemail.com (Postfix) with ESMTP id 34A2F161992 for <linux-mm@kvack.org>; Mon, 24 Feb 2025 16:56:15 +0000 (UTC) X-FDA: 83155441110.07.03E0D4C Received: from us-smtp-delivery-124.mimecast.com (us-smtp-delivery-124.mimecast.com [170.10.133.124]) by imf18.hostedemail.com (Postfix) with ESMTP id E0E9E1C000B for <linux-mm@kvack.org>; Mon, 24 Feb 2025 16:56:12 +0000 (UTC) Authentication-Results: imf18.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=hL5bbURV; spf=pass (imf18.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=1740416173; 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=8Yy4w/XZlsv8uxY4mojETBma8CfgELpSYNnd4DKCaPQ=; b=EexDPEWcCVD+sIPmEzwPQ0FDjM7V69o+x5r7mGmDMyVMoGM+PCMLFGWNXPdIGAgzdEy4oP cvqQG1yRCqeKMjeqNa5VNCFklf5ZetbfQdLl6K1Y2QfPszFbt918DtNULIrin/87DISjpt xKZSeni42h5qy74hJh5RQ80dQSZEgtM= ARC-Seal: i=1; s=arc-20220608; d=hostedemail.com; t=1740416173; a=rsa-sha256; cv=none; b=4heAVOJ7b5yissCvFi5qxwDBGDLvynqsxGBbiEupFUYki40uqzQGh5ZdcIk1TfksV4ruI9 VDSTfjRma1hK2CMQhRPf7LK/DB32JSxuPYLngHATpvOReCs4DfqpK8IxB5wwIt+LI9/voq OMCnCthF1QEJqaYp4Y7XYZBiidFf+4Q= ARC-Authentication-Results: i=1; imf18.hostedemail.com; dkim=pass header.d=redhat.com header.s=mimecast20190719 header.b=hL5bbURV; spf=pass (imf18.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 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=redhat.com; s=mimecast20190719; t=1740416172; 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=8Yy4w/XZlsv8uxY4mojETBma8CfgELpSYNnd4DKCaPQ=; b=hL5bbURV2MM22caGFxaMEY4cYA0B5dnJXePp3ENJu0/FQm4xso12wFU7JFKhC056dv1Cgx pIWdMDJUk6hqZ8ABq53D+aHtxrB5fk9vrM6tyz86ngiaEG+XgZYl+ZrHpR0lWU8WGnGWXL KrBkDIWSAtE1BCIpfzN1g8AzOPNEms4= Received: from mail-wr1-f72.google.com (mail-wr1-f72.google.com [209.85.221.72]) by relay.mimecast.com with ESMTP with STARTTLS (version=TLSv1.3, cipher=TLS_AES_256_GCM_SHA384) id us-mta-364-3NM1LBHpPrmtMkU0e3pu2w-1; Mon, 24 Feb 2025 11:56:09 -0500 X-MC-Unique: 3NM1LBHpPrmtMkU0e3pu2w-1 X-Mimecast-MFC-AGG-ID: 3NM1LBHpPrmtMkU0e3pu2w_1740416168 Received: by mail-wr1-f72.google.com with SMTP id ffacd0b85a97d-38f27bddeeeso4482748f8f.3 for <linux-mm@kvack.org>; Mon, 24 Feb 2025 08:56:08 -0800 (PST) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1740416168; x=1741020968; 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=8Yy4w/XZlsv8uxY4mojETBma8CfgELpSYNnd4DKCaPQ=; b=XxL6XXQmnKg4aVwkEbGDFVByYBQ+1ATJ1j1SyAmXRsLi1JdBnnlNgK8W7323D7gfty lyv6dlJJ5RS+gCmpwvqK5aBlyOUp/7zlp8Ihk4dvSoY20HTcaT5/CQtj+4DPAk1U5tVR Lkc0w5RMN5fWJ3JIPxb+7ONvNzfvQrTyYa3lldNXM7wE9BaaE++wrEXwE5zKNGv6WPkI It9ic6/5aojwjWMm8Mlkq1SU8fxTV33ZsshPabc30xIBBlWvONV/Os6nmOJvOMo8dXhR S2N7kljUfdinl7tAASMY4muTOM0h3pekioM/2UVevIOviqvJb2H809ugMxWvJE1NDIol xFmg== X-Forwarded-Encrypted: i=1; AJvYcCWkIUGBtKbH25pqRvGGzkcnB2h5Yp+HTZyyNPjONeObJBR1e1q4mCfOVTkx3Y73HOfNXvobXCcL1A==@kvack.org X-Gm-Message-State: AOJu0YzPT1mb5LbJ0k9Xqd4Iy7KsD0d8y4r3x+ueGiNndO4c+lvAOKhz FZb5yeKRIGRjWpyHvmLjoxnWsH1KS5dPfPPuu/3CMdEYPBP+FaZ48m9EuyExAXgpw+ujwvPmdRL LBYvznqTT2r8t/uTogE1sEZt4gPFkpY322rrOgFT8Wd2Z3o2d X-Gm-Gg: ASbGncvlLh+psYEnPkjwbpO4CRSyQHqzivgOWsXo30vYgAmPxyO4QDqjv5+qSpBVPpW dUz/Ruv7tmQZ7GuXbhJWNPiVXN+S5CBFIciPUlSeWNL96H3sWYJVU61JfiO/kgd199OebDl1rE/ Gri6n29KLkyvtauRm/Jj+7P2iAx/M8fXMmkxEBiv4OVB9TjyO889YPqXyg8kBvu7+EK+ANB19Pl ZFpxOdDyI7ck+3VZHDhnDmSJ6z+L/BNQSak8Fj09kB+Bcqh/NCGszdlQXZQTudLnPqDuWKWWRQ6 2uDb6M0i59Flp6dFgpQ5par9FPLdeowvpxfipENd/A== X-Received: by 2002:a05:6000:1ac7:b0:38f:2a99:b377 with SMTP id ffacd0b85a97d-38f6f0c4523mr13709702f8f.53.1740416167618; Mon, 24 Feb 2025 08:56:07 -0800 (PST) X-Google-Smtp-Source: AGHT+IHrYsCtuTnI9EW4wn4ZrbygGJqAwQI73Wf+OvRO5jakiYr702W8tJwU3BfJXILKECpWzIC3lQ== X-Received: by 2002:a05:6000:1ac7:b0:38f:2a99:b377 with SMTP id ffacd0b85a97d-38f6f0c4523mr13709656f8f.53.1740416167205; Mon, 24 Feb 2025 08:56:07 -0800 (PST) Received: from localhost (p4ff234b6.dip0.t-ipconnect.de. [79.242.52.182]) by smtp.gmail.com with UTF8SMTPSA id ffacd0b85a97d-38f259d5e92sm32611493f8f.66.2025.02.24.08.56.05 (version=TLS1_3 cipher=TLS_AES_128_GCM_SHA256 bits=128/128); Mon, 24 Feb 2025 08:56:06 -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>, Lance Yang <ioworker0@gmail.com>, "Kirill A. Shutemov" <kirill.shutemov@linux.intel.com> Subject: [PATCH v2 01/20] mm: factor out large folio handling from folio_order() into folio_large_order() Date: Mon, 24 Feb 2025 17:55:43 +0100 Message-ID: <20250224165603.1434404-2-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: dU14NwpvoRzUHBe_ZddvrAQoWNidNGcr_CH5lp9MhOA_1740416168 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: E0E9E1C000B X-Rspamd-Server: rspam07 X-Stat-Signature: gg3f1sdh1x7uewqtopura98iieu8iugt X-HE-Tag: 1740416172-18334 X-HE-Meta: U2FsdGVkX1/z8AGG20431wEGBK0pywg6rPivZgfke9Bu1YQVWAFAQK/bQ5O4LErikI96dFKZZSQKWvsOqrJNkKr7dHjS8Bqnv5XLJRQLU81IWkecgK0aXZU9HBRM1EO1LGOyTgabKJhyDXjIEyaVshJQ2qjHsWijtyG5HjSIrPzdS7p38SY23ktUxhrrDjqw0akRd4tAOvBnz7RuCvkKUXH4HWO31HA6Qe9Rl8H+klOMKQL7KuxJVHP2gDhzsC3VsyOVcQ43wQXChGl5vKsY5BVRvBfswwgSAI6ZDriDERsvwBnJFqw6TVdKXdYw3lpEe5z1gfIR+3FQQIaHx3AAmMO6XbxbiC+UoZQITX7CXVroe4FE/fjRZ6w0FNnkQ2WcOzbQyzdCQcvR0CjM5zf5Q0AsrmRlr0hE8YE5y461Ml0+stWSbODVcnWn2ptZJHVMee7b83NriUaQcohXWLa3uonzfVRU3XBnvCv2JZF0esSFSUzc9Xxt3osAKILugq0pYXSxgurqEwCDK9ujxzpYDwM+p6sDxER8zzyLbXzTMyZ/gjlVI0us9G/vjADomjrDPR/jBVae8gR/bBLgEYUuKe2kyvKJviC7DkIFRTh5NmloIs5Ek+3gSFJdk3D+qGslx2d1gFQcFrRZMBZfANwweSQQdxJQRPEGVgbLQQNMC044YCxR1dGBxF1qZTEFTqNJKJEpfAMYsrlbp2PvMixdm+MJoy1mgUZLShijIDcZfsdYFgMTYymxjdR6iPm3mqWTEYBJnvml1gbOS67Wc12kfxDGrOwl7ciJGwtcrhs4/oeWG0ja/hIZG2m598QWLw0y8OYB7moJEvsgKFBD81UhQ98AUkAz/qal/hjpwHwdSonnFkwwhrXFmGG3CAAgJgbhhQlFYGPRkQAVFuWdmXn2cAacCBv00c9GHzAG1gP90YJY9FQjI/kmrwpRxiIKdcYZFgRi1SvNWL8wkBx6nIw uIy3VLX+ kSkiNHCkZxGsy8wn5weIDM8cYSjpugWI0/KQYHcIJHbQleqDh+RVsL9gZmrNiWDf4/jDM7PT+WWkVDvbmQUdnoqT6b8zRiTVsUdhQqybdNa6fsYtGlRgGPmwkxz0lHCI9j12W/JQOyw4gEhhhtkIrY6+0P69Jgxj81Xo7GDBg8ZxQRbKHcUApsg3Pr5kjQzDWA8O9kgmc3/J+0mELb3epp+KsI3c6zJAZekct5ybyjr9Rg5J3WMXicEimScHm9uSep31FOuPhKLVDJVEi5Hx6I7w8q8EMu54LGV9ezRWgunfc+X8mNz9oW7ZHxPVNxoT/Q60oa6AAlezUh5kZqlBucSSRoxxijFpdL8wmKFocT2Iq2VwVkj5z/2l46zhUoOidFWV5jwSeIWuWrE9rP9h4OgLxK0Xf543G4mAfwf5pzuh2D+JO6X2XwTjzLyWpJ5CCP3XQb9LV6A8mSF1y2bpcgAPtny/1N/vFeXDkBUuilHU3ghPHNxWb5h7l+mu+XM6VoR1Ooi6+Phpg/+qh7V746gxivMJqAvwJVRGwiFPJfnymgmeRky/zqdtb/Fr+1sPqmticRZVMIfbkAMS4w4/fkWJedw== 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/include/linux/mm.h b/include/linux/mm.h index d82feabbe44f8..d00214e22a174 100644 --- a/include/linux/mm.h +++ b/include/linux/mm.h @@ -1194,6 +1194,11 @@ struct inode; extern void prep_compound_page(struct page *page, unsigned int order); +static inline unsigned int folio_large_order(const struct folio *folio) +{ + return folio->_flags_1 & 0xff; +} + /* * compound_order() can be called without holding a reference, which means * that niceties like page_folio() don't work. These callers should be @@ -1207,7 +1212,7 @@ static inline unsigned int compound_order(struct page *page) if (!test_bit(PG_head, &folio->flags)) return 0; - return folio->_flags_1 & 0xff; + return folio_large_order(folio); } /** @@ -1223,7 +1228,7 @@ static inline unsigned int folio_order(const struct folio *folio) { if (!folio_test_large(folio)) return 0; - return folio->_flags_1 & 0xff; + return folio_large_order(folio); } #include <linux/huge_mm.h> @@ -2139,7 +2144,7 @@ static inline long folio_nr_pages(const struct folio *folio) #ifdef CONFIG_64BIT return folio->_folio_nr_pages; #else - return 1L << (folio->_flags_1 & 0xff); + return 1L << folio_large_order(folio); #endif } @@ -2164,7 +2169,7 @@ static inline unsigned long compound_nr(struct page *page) #ifdef CONFIG_64BIT return folio->_folio_nr_pages; #else - return 1L << (folio->_flags_1 & 0xff); + return 1L << folio_large_order(folio); #endif }