|
|
Log in / Subscribe / Register

Remove READ_ONLY_THP_FOR_FS

From:  Zi Yan <ziy-AT-nvidia.com>
To:  "Matthew Wilcox (Oracle)" <willy-AT-infradead.org>, Song Liu <songliubraving-AT-fb.com>
Subject:  [RFC PATCH 00/11] Remove READ_ONLY_THP_FOR_FS
Date:  Mon, 23 Mar 2026 15:06:33 -0400
Message-ID:  <20260323190644.1714379-1-ziy@nvidia.com>
Cc:  Chris Mason <clm-AT-fb.com>, David Sterba <dsterba-AT-suse.com>, Alexander Viro <viro-AT-zeniv.linux.org.uk>, Christian Brauner <brauner-AT-kernel.org>, Jan Kara <jack-AT-suse.cz>, Andrew Morton <akpm-AT-linux-foundation.org>, David Hildenbrand <david-AT-kernel.org>, Lorenzo Stoakes <ljs-AT-kernel.org>, Zi Yan <ziy-AT-nvidia.com>, Baolin Wang <baolin.wang-AT-linux.alibaba.com>, "Liam R. Howlett" <Liam.Howlett-AT-oracle.com>, Nico Pache <npache-AT-redhat.com>, Ryan Roberts <ryan.roberts-AT-arm.com>, Dev Jain <dev.jain-AT-arm.com>, Barry Song <baohua-AT-kernel.org>, Lance Yang <lance.yang-AT-linux.dev>, Vlastimil Babka <vbabka-AT-kernel.org>, Mike Rapoport <rppt-AT-kernel.org>, Suren Baghdasaryan <surenb-AT-google.com>, Michal Hocko <mhocko-AT-suse.com>, Shuah Khan <shuah-AT-kernel.org>, linux-btrfs-AT-vger.kernel.org, linux-kernel-AT-vger.kernel.org, linux-fsdevel-AT-vger.kernel.org, linux-mm-AT-kvack.org, linux-kselftest-AT-vger.kernel.org
Archive-link:  Article

Hi all,

After Willy's heads-up on the removal of CONFIG_READ_ONLY_THP_FOR_FS[1].
This patchset is an attempt of removing it.

The patchset does the removal in the following steps:
1. remove READ_ONLY_THP_FOR_FS Kconfig
2. remove collapse_file() code on READ_ONLY_THP_FOR_FS
3. remove filemap_nr_thps*() functions
4. remove file_thp_enabled()
5. remove related folio splittable checks
6. replace try_folio_split_to_order() with folio_split() in
   truncate_inode_partial_folio().
6. remove related fs code
7. clean up selftests code

It seems that NR_FILE_THPS is also used for fs with large folio support,
so it is kept.

Let me know if I miss anything. Comments and suggestions are welcome.

Link: https://lore.kernel.org/all/aTJg9vOijOGVTnVt@casper.infra... [1]

Zi Yan (11):
  mm: remove READ_ONLY_THP_FOR_FS Kconfig option
  mm/khugepaged: remove READ_ONLY_THP_FOR_FS code in collapse_file()
  mm: remove filemap_nr_thps*() functions
  mm/huge_memory: remove file_thp_enabled() and its caller.
  mm/huge_memory: remove folio split check for READ_ONLY_THP_FOR_FS
  mm/truncate: use folio_split() in truncate_inode_partial_folio()
  fs: remove nr_thp from struct address_space
  fs: remove READ_ONLY_THP_FOR_FS code
  fs/btrfs: remove a comment referring to READ_ONLY_THP_FOR_FS
  selftests/mm: remove READ_ONLY_THP_FOR_FS test in khugepaged
  selftests/mm: remove READ_ONLY_THP_FOR_FS test in guard-regions

 fs/btrfs/defrag.c                          |   3 -
 fs/inode.c                                 |   3 -
 fs/open.c                                  |  27 ---
 include/linux/fs.h                         |   5 -
 include/linux/huge_mm.h                    |  28 ---
 include/linux/pagemap.h                    |  29 ---
 mm/Kconfig                                 |  11 --
 mm/filemap.c                               |   1 -
 mm/huge_memory.c                           |  44 -----
 mm/khugepaged.c                            | 159 ++++-------------
 mm/truncate.c                              |   8 +-
 tools/testing/selftests/mm/guard-regions.c | 148 +---------------
 tools/testing/selftests/mm/khugepaged.c    | 197 +--------------------
 13 files changed, 42 insertions(+), 621 deletions(-)

-- 
2.43.0




Copyright © 2026, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds