mbox series

[0/9] huge tmpfs: shmem_is_huge() fixes and cleanups

Message ID da632211-8e3e-6b1-aee-ab24734429a0@google.com (mailing list archive)
Headers show
Series huge tmpfs: shmem_is_huge() fixes and cleanups | expand

Message

Hugh Dickins Aug. 17, 2021, 8:03 a.m. UTC
A series of huge tmpfs fixes and cleanups, suitable for 5.15, taken
from the earlier 16 "tmpfs: HUGEPAGE and MEM_LOCK fcntls and flags":
https://lore.kernel.org/linux-mm/2862852d-badd-7486-3a8e-c5ea9666d6fb@google.com/

The API additions in that series have not yet been fully agreed, let's
revisit those after the 5.15 merge window, but please proceed now with
the uncontroversial preliminaries - thanks.

Still diffed against 5.14-rc3: no conflict yet with 5.14-rc6 or
linux-next or mmotm - no problems with the foliage.

Most exactly as in the 16, with a few commit comments clarified from
review; most already Reviewed-by Yang Shi (many thanks!), tags added.

Exceptions: 6/9 SGP_NOALLOC introduced to resolve our review doubts,
that and 7/9 not yet tagged, 9/9 now added from a posting last year:
Kirill's "What breaks?" if shmem_enabled "always" reminds me that
I'm still carrying the i915 THP fix, as corrected by Matthew.

1/9 huge tmpfs: fix fallocate(vanilla) advance over huge pages
2/9 huge tmpfs: fix split_huge_page() after FALLOC_FL_KEEP_SIZE
3/9 huge tmpfs: remove shrinklist addition from shmem_setattr()
4/9 huge tmpfs: revert shmem's use of transhuge_vma_enabled()
5/9 huge tmpfs: move shmem_huge_enabled() upwards
6/9 huge tmpfs: SGP_NOALLOC to stop collapse_file() on race
7/9 huge tmpfs: shmem_is_huge(vma, inode, index)
8/9 huge tmpfs: decide stat.st_blksize by shmem_is_huge()
9/9 shmem: shmem_writepage() split unlikely i915 THP

 include/linux/shmem_fs.h |   23 +++-
 mm/huge_memory.c         |    6 -
 mm/khugepaged.c          |    2 
 mm/shmem.c               |  229 ++++++++++++++++++-----------------------
 4 files changed, 129 insertions(+), 131 deletions(-)

Hugh