mbox series

[v13b,00/18] Convert memcg to folios

Message ID 20210712194551.91920-1-willy@infradead.org (mailing list archive)
Headers show
Series Convert memcg to folios | expand

Message

Matthew Wilcox July 12, 2021, 7:45 p.m. UTC
This is the part of the v13 patch series which deals with converting
(most of) the memcg interfaces to work with folios instead of pages.
A few interfaces are not changed due to having exclusively or many
users which are not going to be converted to folios soon.  Eventually,
all memcg interfaces should be converted to folios as all accounting of
memory is done on and with the head page.

A few of these patches ran into trouble with the build bots, and those
problems have been corrected.  I imagine that posting this as a patch
series independently of v13a will cause the build bots to report errors
as I don't know how to tell them that this series depends on that series.

Matthew Wilcox (Oracle) (18):
  mm: Add folio_nid()
  mm/memcg: Remove 'page' parameter to mem_cgroup_charge_statistics()
  mm/memcg: Use the node id in mem_cgroup_update_tree()
  mm/memcg: Remove soft_limit_tree_node()
  mm/memcg: Convert memcg_check_events to take a node ID
  mm/memcg: Add folio_memcg() and related functions
  mm/memcg: Convert commit_charge() to take a folio
  mm/memcg: Convert mem_cgroup_charge() to take a folio
  mm/memcg: Convert uncharge_page() to uncharge_folio()
  mm/memcg: Convert mem_cgroup_uncharge() to take a folio
  mm/memcg: Convert mem_cgroup_migrate() to take folios
  mm/memcg: Convert mem_cgroup_track_foreign_dirty_slowpath() to folio
  mm/memcg: Add folio_memcg_lock() and folio_memcg_unlock()
  mm/memcg: Convert mem_cgroup_move_account() to use a folio
  mm/memcg: Add folio_lruvec()
  mm/memcg: Add folio_lruvec_lock() and similar functions
  mm/memcg: Add folio_lruvec_relock_irq() and
    folio_lruvec_relock_irqsave()
  mm/workingset: Convert workingset_activation to take a folio

 include/linux/memcontrol.h       | 223 ++++++++++++---------
 include/linux/mm.h               |   5 +
 include/linux/swap.h             |   2 +-
 include/trace/events/writeback.h |   8 +-
 kernel/events/uprobes.c          |   3 +-
 mm/compaction.c                  |   4 +-
 mm/filemap.c                     |   8 +-
 mm/huge_memory.c                 |   7 +-
 mm/khugepaged.c                  |   8 +-
 mm/ksm.c                         |   3 +-
 mm/memcontrol.c                  | 323 +++++++++++++++----------------
 mm/memory-failure.c              |   2 +-
 mm/memory.c                      |   9 +-
 mm/memremap.c                    |   2 +-
 mm/migrate.c                     |   6 +-
 mm/mlock.c                       |   3 +-
 mm/page_alloc.c                  |   2 +-
 mm/rmap.c                        |   2 +-
 mm/shmem.c                       |   7 +-
 mm/swap.c                        |  26 ++-
 mm/userfaultfd.c                 |   2 +-
 mm/vmscan.c                      |   8 +-
 mm/workingset.c                  |  10 +-
 23 files changed, 358 insertions(+), 315 deletions(-)