mbox series

[v2,0/6] Remove some lruvec page accounting functions

Message ID 20231228085748.1083901-1-willy@infradead.org (mailing list archive)
Headers show
Series Remove some lruvec page accounting functions | expand

Message

Matthew Wilcox Dec. 28, 2023, 8:57 a.m. UTC
Some functions are now unused; remove them.  Make
__mod_lruvec_page_state() unused and then remove it.

Based on next-20231222.  Boot tested only (as next-20231222 has some
infelicities with regard to my testing setup)

v2: Redo the slub conversion.  Avoid using folio_alloc(), but do cast
the struct page pointer that we get back from alloc_pages() to a folio
pointer.  Since we know it's a head page, this all works marvellously,
and will continue to work until we can actually split folios, slabs and
pages apart, at which time it will have to be redone.  I tried a few
different ways to make slab ignorant of folios and it's quite hard to
do right now.  Look for a patch series to make that possible soon.

I wasn't expecting the previous version to make the next merge window, but
since Andrew decided he wanted it, here's what I'm currently thinking ...

Matthew Wilcox (Oracle) (6):
  mm: Remove inc/dec lruvec page state functions
  slub: Use alloc_pages_node() in alloc_slab_page()
  slub: Use folio APIs in free_large_kmalloc()
  slub: Use a folio in __kmalloc_large_node
  mm/khugepaged: Use a folio more in collapse_file()
  mm/memcontrol: Remove __mod_lruvec_page_state()

 include/linux/vmstat.h | 60 +++++++++++++-----------------------------
 mm/khugepaged.c        | 16 +++++------
 mm/memcontrol.c        |  9 +++----
 mm/slub.c              | 20 ++++++--------
 4 files changed, 38 insertions(+), 67 deletions(-)