aboutsummaryrefslogtreecommitdiffstats
path: root/mm/memcontrol.c
AgeCommit message (Expand)AuthorFilesLines
2024-09-21Merge tag 'mm-stable-2024-09-20-02-31' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-234/+256
2024-09-17mm: add nr argument in mem_cgroup_swapin_uncharge_swap() helper to support la...Barry Song1-3/+4
2024-09-09mm: clean up mem_cgroup_iter()Kinsey Ho1-20/+12
2024-09-09mm: restart if multiple traversals racedKinsey Ho1-9/+17
2024-09-09mm: increment gen # before restarting traversalKinsey Ho1-10/+12
2024-09-09mm: don't hold css->refcnt during traversalKinsey Ho1-17/+1
2024-09-09mm: introduce a pageflag for partially mapped foliosUsama Arif1-1/+2
2024-09-03mm,memcg: provide per-cgroup counters for NUMA balancing operationsKaiyang Zhao1-0/+45
2024-09-01memcg: make PGPGIN and PGPGOUT v1 onlyShakeel Butt1-1/+4
2024-09-01memcg: move v1 events and statistics code to v1 fileShakeel Butt1-29/+4
2024-09-01memcg: move mem_cgroup_charge_statistics to v1 codeShakeel Butt1-16/+3
2024-09-01memcg: move mem_cgroup_event_ratelimit to v1 codeShakeel Butt1-28/+0
2024-09-01memcg: move v1 only percpu stats in separate structShakeel Butt1-9/+9
2024-09-01mm: kmem: add lockdep assertion to obj_cgroup_memcgMuchun Song1-6/+5
2024-09-01memcg: replace memcg ID idr with xarrayShakeel Butt1-29/+10
2024-09-01mm, memcg: cg2 memory{.swap,}.peak write handlersDavid Finkel1-10/+106
2024-09-01mm: memcg: don't call propagate_protected_usage() needlesslyRoman Gushchin1-8/+8
2024-09-01memcg: increase the valid index range for memcg statsShakeel Butt1-22/+28
2024-09-01mm: kmem: remove mem_cgroup_from_obj()Muchun Song1-31/+1
2024-09-01mm/memcontrol: respect zswap.writeback setting from parent cg tooMike Yuan1-3/+9
2024-08-07memcg: protect concurrent access to mem_cgroup_idrShakeel Butt1-2/+20
2024-07-12mm/page_counter: move calculating protection values to page_counterMaarten Lankhorst1-151/+3
2024-07-10mm: remove CONFIG_MEMCG_KMEMJohannes Weiner1-54/+6
2024-07-06Merge branch 'mm-hotfixes-stable' into mm-stable to pick up "mm: fixAndrew Morton1-11/+0
2024-07-06mm: fix crashes from deferred split racing folio migrationHugh Dickins1-11/+0
2024-07-04mm: memcg: adjust the warning when seq_buf overflowsXiu Jianfeng1-1/+2
2024-07-04mm: memcg: remove redundant seq_buf_has_overflowed()Xiu Jianfeng1-3/+0
2024-07-04mm: memcg: guard memcg1-specific fields accesses in mm/memcontrol.cRoman Gushchin1-2/+7
2024-07-04mm: memcg: gather memcg1-specific fields initialization in memcg1_memcg_init()Roman Gushchin1-5/+1
2024-07-04mm: memcg: guard cgroup v1-specific code in mem_cgroup_print_oom_meminfo()Roman Gushchin1-0/+2
2024-07-04mm: memcg: factor out legacy socket memory accounting codeRoman Gushchin1-17/+5
2024-07-04mm: memcg: move memcg_account_kmem() to memcontrol-v1.cRoman Gushchin1-21/+10
2024-07-04mm: add swappiness= arg to memory.reclaimDan Schatzberg1-9/+44
2024-07-04mm: memcg: put cgroup v1-specific code under a config optionRoman Gushchin1-3/+7
2024-07-04mm: memcg: move cgroup v1 interface files to memcontrol-v1.cRoman Gushchin1-742/+7
2024-07-04mm: memcg: rename memcg_oom_recover()Roman Gushchin1-3/+3
2024-07-04mm: memcg: move cgroup v1 oom handling code into memcontrol-v1.cRoman Gushchin1-214/+2
2024-07-04mm: memcg: rename memcg_check_events()Roman Gushchin1-4/+4
2024-07-04mm: memcg: move legacy memcg event code into memcontrol-v1.cRoman Gushchin1-682/+5
2024-07-04mm: memcg: rename charge move-related functionsRoman Gushchin1-4/+4
2024-07-04mm: memcg: move charge migration code to memcontrol-v1.cRoman Gushchin1-996/+8
2024-07-04mm: memcg: rename soft limit reclaim-related functionsRoman Gushchin1-2/+2
2024-07-04mm: memcg: move soft limit reclaim code to memcontrol-v1.cRoman Gushchin1-333/+4
2024-07-03mm: memcontrol: add VM_BUG_ON_FOLIO() to catch lru folio in mem_cgroup_migrate()Baolin Wang1-0/+1
2024-07-03mm: zswap: rename is_zswap_enabled() to zswap_is_enabled()Yosry Ahmed1-1/+1
2024-07-03mm: memcontrol: remove page_memcg()Kefeng Wang1-1/+1
2024-07-03mm/swap: reduce swap cache search spaceKairui Song1-1/+1
2024-06-15mm: shmem: fix getting incorrect lruvec when replacing a shmem folioBaolin Wang1-2/+1
2024-06-05memcg: remove the lockdep assert from __mod_objcg_mlstate()Sebastian Andrzej Siewior1-2/+0
2024-05-11memcg, oom: cleanup unused memcg_oom_gfp_mask and memcg_oom_orderXiu Jianfeng1-2/+0
2024-05-11mm: memcg: make alloc_mem_cgroup_per_node_info() return boolXiu Jianfeng1-5/+5
2024-05-07mm: memcg: use READ_ONCE()/WRITE_ONCE() to access stock->nr_pagesBreno Leitao1-9/+15
2024-05-07memcg: use proper type for mod_memcg_stateShakeel Butt1-1/+2
2024-05-07memcg: warn for unexpected events and statsShakeel Butt1-16/+23
2024-05-07memcg: cleanup __mod_memcg_lruvec_stateShakeel Butt1-2/+0
2024-05-07memcg: reduce memory for the lruvec and memcg statsShakeel Butt1-20/+114
2024-05-07mm: memcg: account memory used for memcg vmstats and lruvec statsRoman Gushchin1-3/+4
2024-05-07memcg: dynamically allocate lruvec_statsShakeel Butt1-12/+75
2024-05-07memcg: reduce memory size of mem_cgroup_events_indexShakeel Butt1-2/+4
2024-05-05memcg: fix data-race KCSAN bug in rstatsBreno Leitao1-5/+7
2024-05-05memcg: simple cleanup of stats update functionsShakeel Butt1-16/+15
2024-04-25mm, slab: move slab_memcg hooks to mm/memcontrol.cVlastimil Babka1-0/+90
2024-04-25mm, slab: move memcg charging to post-alloc hookVlastimil Babka1-1/+1
2024-04-25mm: always initialise folio->_deferred_listMatthew Wilcox (Oracle)1-0/+3
2024-04-25mm: introduce slabobj_ext to support slab object extensionsSuren Baghdasaryan1-49/+7
2024-04-25mm: memcg: add NULL check to obj_cgroup_put()Yosry Ahmed1-12/+6
2024-03-04memcg: remove mem_cgroup_uncharge_list()Matthew Wilcox (Oracle)1-19/+0
2024-03-04memcg: add mem_cgroup_uncharge_folios()Matthew Wilcox (Oracle)1-0/+13
2024-03-04mm: memcg: make memcg huge page split support any order splitZi Yan1-5/+6
2024-03-04mm/memcg: use order instead of nr in split_page_memcg()Zi Yan1-1/+2
2024-02-22mm: memcg: use larger batches for proactive reclaimT.J. Mercier1-2/+3
2024-02-22mm: memcg: don't periodically flush stats when memcg is disabledT.J. Mercier1-1/+1
2024-02-22mm: writeback: ratelimit stat flush from mem_cgroup_wb_statsShakeel Butt1-1/+1
2024-02-21memcg: use a folio in get_mctgt_type_thpMatthew Wilcox (Oracle)1-5/+7
2024-02-21memcg: use a folio in get_mctgt_typeMatthew Wilcox (Oracle)1-10/+13
2024-02-21memcg: return the folio in union mc_targetMatthew Wilcox (Oracle)1-7/+7
2024-02-21memcg: convert mem_cgroup_move_charge_pte_range() to use a folioMatthew Wilcox (Oracle)1-25/+24
2024-02-20mm: memcontrol: clarify swapaccount=0 deprecation warningJohannes Weiner1-3/+7
2024-02-07mm: memcg: optimize parent iteration in memcg_rstat_updated()Yosry Ahmed1-21/+35
2024-01-25mm: memcontrol: don't throttle dying tasks on memory.highJohannes Weiner1-4/+25
2024-01-09Merge tag 'mm-stable-2024-01-08-15-31' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-123/+196
2024-01-09Merge tag 'slab-for-6.8' of git://git.kernel.org/pub/scm/linux/kernel/git/vba...Linus Torvalds1-3/+3
2024-01-08Merge tag 'vfs-6.8.misc' of git://git.kernel.org/pub/scm/linux/kernel/git/vfs...Linus Torvalds1-5/+5
2024-01-05mm/memcontrol: remove __mod_lruvec_page_state()Matthew Wilcox (Oracle)1-5/+4
2023-12-29zswap: memcontrol: implement zswap writeback disablingNhat Pham1-0/+38
2023-12-29mm: memcg: fix split queue list crash when large folio migrationBaolin Wang1-0/+11
2023-12-20mm: memcg: restore subtree stats flushingYosry Ahmed1-29/+39
2023-12-20mm: memcg: make stats flushing threshold per-memcgYosry Ahmed1-16/+34
2023-12-20mm: memcg: move vmstats structs definition above flushing codeYosry Ahmed1-74/+74
2023-12-20mm: memcg: change flush_next_time to flush_last_timeYosry Ahmed1-3/+4
2023-12-12mm: memcg: add per-memcg zswap writeback statDomenico Cerasuolo1-0/+1
2023-12-12zswap: make shrinking memcg-awareDomenico Cerasuolo1-0/+2
2023-12-10mm: memcg: add reminder comment for the memcg v2 eventsDmitry Rokosov1-0/+4
2023-12-06mm: kmem: properly initialize local objcg variable in current_obj_cgroup()Roman Gushchin1-1/+1
2023-12-06mm/slab: move pre/post-alloc hooks from slab.h to slub.cVlastimil Babka1-0/+1
2023-12-05mm/memcontrol: remove CONFIG_SLAB #ifdef guardsVlastimil Babka1-3/+2
2023-11-28eventfd: simplify eventfd_signal()Christian Brauner1-5/+5
2023-11-15mm: kmem: drop __GFP_NOFAIL when allocating objcg vectorsRoman Gushchin1-1/+2
2023-10-25mm: fix multiple typos in multiple filesMuhammad Muzammil1-2/+2
2023-10-25mm: kmem: reimplement get_obj_cgroup_from_current()Roman Gushchin1-32/+0
2023-10-25mm: kmem: scoped objcg protectionRoman Gushchin1-2/+45
2023-10-25mm: kmem: make memcg keep a reference to the original objcgRoman Gushchin1-0/+5
2023-10-25mm: kmem: add direct objcg pointer to task_structRoman Gushchin1-9/+130
2023-10-25mm: kmem: optimize get_obj_cgroup_from_current()Roman Gushchin1-20/+14
2023-10-18hugetlb: memcg: account hugetlb-backed memory in memory controllerNhat Pham1-1/+41
2023-10-18memcontrol: only transfer the memcg data for migrationNhat Pham1-3/+37
2023-10-18memcontrol: add helpers for hugetlb memcg accountingNhat Pham1-12/+47
2023-10-18mm: memcg: normalize the value passed into memcg_rstat_updated()Yosry Ahmed1-2/+18
2023-10-18mm: memcg: refactor page state unit helpersYosry Ahmed1-11/+33
2023-10-06memcg: remove unused do_memsw_account in memcg1_stat_formatLiu Shixin1-7/+2
2023-10-06memcg: expose swapcache stat for memcg v1Liu Shixin1-0/+6
2023-10-04mm: memcg: add THP swap out info for anonymous reclaimXin Hao1-0/+2
2023-09-29mm, memcg: reconsider kmem.limit_in_bytes deprecationMichal Hocko1-0/+13
2023-09-19mm: memcontrol: fix GFP_NOFS recursion in memory.high enforcementJohannes Weiner1-3/+3
2023-09-05memcontrol: ensure memcg acquired by id is properly set upJohannes Weiner1-5/+17
2023-08-24mm: fix get_mctgt_type() kernel-docMatthew Wilcox (Oracle)1-18/+13
2023-08-24memcg: remove duplication detection for mem_cgroup_uncharge_swapLu Jialin1-3/+0
2023-08-24mm: memcg: use rstat for non-hierarchical statsYosry Ahmed1-29/+38
2023-08-21mm: remove folio_test_transhuge()Matthew Wilcox (Oracle)1-1/+1
2023-08-21merge mm-hotfixes-stable into mm-stable to pick up depended-upon changesAndrew Morton1-0/+2
2023-08-21mm: remove redundant K() macro definitionZhangPeng1-1/+0
2023-08-21mm/memcg: fix wrong function name above obj_cgroup_charge_zswap()Miaohe Lin1-1/+1
2023-08-21mm:vmscan: fix inaccurate reclaim during proactive reclaimEfly Young1-2/+2
2023-08-21memcg: convert get_obj_cgroup_from_page to get_obj_cgroup_from_folioMatthew Wilcox (Oracle)1-4/+4
2023-08-21mm: enable page walking API to lock vmas during the walkSuren Baghdasaryan1-0/+2
2023-08-18mm/memcg: minor cleanup for mc_handle_present_pte()Miaohe Lin1-3/+2
2023-08-18mm/memcg: fix obsolete comment above MEM_CGROUP_MAX_RECLAIM_LOOPSMiaohe Lin1-1/+1
2023-08-18mm/memcg: minor cleanup for MEM_CGROUP_ID_MAXMiaohe Lin1-0/+1
2023-08-18memcg: drop kmem.limit_in_bytesMichal Hocko1-10/+0
2023-06-23mm/memcontrol: do not tweak node in mem_cgroup_init()Haifeng Xu1-2/+1
2023-06-19mm/memcg: remove return value of mem_cgroup_scan_tasks()ZhangPeng1-5/+4
2023-06-19mm: kill lock|unlock_page_memcg()Kefeng Wang1-14/+4
2023-06-19mm: ptep_get() conversionRyan Roberts1-2/+2
2023-06-19mm/various: give up if pte_offset_map[_lock]() failsHugh Dickins1-4/+4
2023-06-09memcg: use helper macro FLUSH_TIMEMiaohe Lin1-1/+1
2023-06-09mm/memcontrol: export memcg.swap watermark via sysfs for v2 memcgLars R. Damerow1-0/+13
2023-06-09mm: multi-gen LRU: cleanup lru_gen_soft_reclaim()T.J. Alumbaugh1-1/+1
2023-06-09mm/memcontrol: fix typo in commentHaifeng Xu1-1/+1
2023-06-09memcg, oom: remove explicit wakeup in mem_cgroup_oom_synchronize()Haifeng Xu1-8/+1
2023-06-09memcg, oom: remove unnecessary check in mem_cgroup_oom_synchronize()Haifeng Xu1-10/+3
2023-06-09memcg: remove mem_cgroup_flush_stats_atomic()Yosry Ahmed1-19/+5
2023-06-09memcg: calculate root usage from global stateYosry Ahmed1-19/+5
2023-06-09memcg: flush stats non-atomically in mem_cgroup_wb_stats()Yosry Ahmed1-5/+1
2023-06-09memcg: dump memory.stat during cgroup OOM for v1Yosry Ahmed1-25/+35
2023-06-09memcg: use seq_buf_do_printk() with mem_cgroup_print_oom_meminfo()Yosry Ahmed1-13/+14
2023-06-09mm: memcg: use READ_ONCE()/WRITE_ONCE() to access stock->cachedRoman Gushchin1-6/+6
2023-06-09mm: kmem: fix a NULL pointer dereference in obj_stock_flush_required()Roman Gushchin1-9/+10
2023-04-18memcg: page_cgroup_ino() get memcg from the page's folioYosry Ahmed1-1/+2
2023-04-18memcg v1: provide read access to memory.pressure_levelFlorian Schmidt1-0/+11
2023-04-18memcg: do not modify rstat tree for zero updatesYosry Ahmed1-0/+3
2023-04-18workingset: memcg: sleep when flushing stats in workingset_refault()Yosry Ahmed1-2/+2
2023-04-18memcg: sleep during flushing stats in safe contextsYosry Ahmed1-9/+36
2023-04-18memcg: replace stats_flush_lock with an atomicYosry Ahmed1-7/+11
2023-04-18memcg: do not flush stats in irq contextYosry Ahmed1-1/+15
2023-04-18memcg: rename mem_cgroup_flush_stats_"delayed" to "ratelimited"Yosry Ahmed1-1/+1
2023-04-18cgroup: rename cgroup_rstat_flush_"irqsafe" to "atomic"Yosry Ahmed1-1/+1
2023-04-18memcg: do not drain charge pcp caches on remote isolated cpusMichal Hocko1-1/+2
2023-04-05mm: return an ERR_PTR from __filemap_get_folioChristoph Hellwig1-1/+1
2023-03-28mm, memcg: Prevent memory.soft_limit_in_bytes load/store tearingYue Zhao1-4/+4
2023-03-28mm, memcg: Prevent memory.oom_control load/store tearingYue Zhao1-5/+5
2023-03-28mm, memcg: Prevent memory.swappiness load/store tearingYue Zhao1-3/+3
2023-03-28mm, memcg: Prevent memory.oom.group load/store tearingYue Zhao1-3/+3
2023-02-23Merge tag 'mm-stable-2023-02-20-13-37' of git://git.kernel.org/pub/scm/linux/...Linus Torvalds1-30/+68
2023-02-20mm: change to return bool for isolate_lru_page()Baolin Wang1-2/+2
2023-02-16mm: memcontrol: rename memcg_kmem_enabled()Roman Gushchin1-4/+4
2023-02-10mm: memcontrol: add new kernel parameter cgroup.memory=nobpfYafang Shao1-0/+18
2023-02-02mm: multi-gen LRU: section for memcg LRUT.J. Alumbaugh1-6/+2
2023-02-02mm: convert mem_cgroup_css_from_page() to mem_cgroup_css_from_folio()Matthew Wilcox (Oracle)1-7/+5
2023-01-31Sync mm-stable with mm-hotfixes-stable to pick up dependent patchesAndrew Morton1-54/+13
2023-01-31Revert "mm: add nodes= arg to memory.reclaim"Michal Hocko1-54/+13
2023-01-18mm: memcg: add folio_memcg_check()Matthew Wilcox1-3/+3
2023-01-18mm: multi-gen LRU: per-node lru_gen_folio listsYu Zhao1-0/+16
2023-01-18mm: memcontrol: deprecate charge movingJohannes Weiner1-0/+4
2023-01-18mm: memcontrol: skip moving non-present pages that are mapped elsewhereJohannes Weiner1-14/+38
2022-12-11mm: memcg: fix swapcached stat accountingHugh Dickins1-0/+6
2022-12-11mm: add nodes= arg to memory.reclaimMina Almasry1-13/+54
2022-12-09Merge branch 'mm-hotfixes-stable' into mm-stableAndrew Morton1-2/+13
2022-12-09memcg: fix possible use-after-free in memcg_write_event_control()Tejun Heo1-2/+13
2022-11-30mm: vmscan: split khugepaged stats from direct reclaim statsJohannes Weiner1-2/+6
2022-11-30Merge branch 'mm-hotfixes-stable' into mm-stableAndrew Morton1-1/+1
2022-11-22mm: correctly charge compressed memory to its memcgLi Liguang1-1/+1
2022-11-08mm: convert find_get_incore_page() to filemap_get_incore_folio()Matthew Wilcox (Oracle)1-3/+9
2022-11-08mm: memcontrol: use mem_cgroup_is_root() helperKamalesh Babulal1-10/+10
2022-10-10Merge tag 'mm-stable-2022-10-08' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds1-97/+184
2022-10-10Merge tag 'cgroup-for-6.1' of git://git.kernel.org/pub/scm/linux/kernel/git/t...Linus Torvalds1-2/+2
2022-10-10Merge tag 'sched-rt-2022-10-05' of git://git.kernel.org/pub/scm/linux/kernel/...Linus Torvalds1-13/+6
2022-10-03mm: memcontrol: drop dead CONFIG_MEMCG_SWAP config symbolJohannes Weiner1-3/+3
2022-10-03mm: memcontrol: use do_memsw_account() in a few more placesJohannes Weiner1-10/+10
2022-10-03mm: memcontrol: deprecate swapaccounting=0 modeJohannes Weiner1-40/+10
2022-10-03mm: memcontrol: don't allocate cgroup swap arrays when memcg is disabledJohannes Weiner1-0/+3
2022-10-03mm: memcontrol: make cgroup_memory_noswap a static keyKairui Song1-8/+19
2022-10-03mm/memcontrol: use kstrtobool for swapaccount param parsingLiu Shixin1-4/+4
2022-10-03memcg: reduce size of memcg vmstats structuresShakeel Butt1-10/+44
2022-10-03memcg: rearrange codeShakeel Butt1-23/+23
2022-10-03memcg: extract memcg_vmstats from struct mem_cgroupShakeel Butt1-9/+48
2022-10-03memcg: convert mem_cgroup_swap_full() to take a folioMatthew Wilcox (Oracle)1-3/+3
2022-10-03mm: remove lookup_swap_cache()Matthew Wilcox (Oracle)1-1/+1
2022-10-03memcg: convert mem_cgroup_swapin_charge_page() to mem_cgroup_swapin_charge_fo...Matthew Wilcox (Oracle)1-7/+6
2022-09-26mm/memcontrol: stop using mm->highest_vm_endLiam R. Howlett1-4/+2
2022-09-26mm: multi-gen LRU: support page table walksYu Zhao1-0/+25