mem_cgroup_replace_folio(9)
β¨ mem_cgroup_replace_folio β¨
Ok so bestie, welcome to the mem_cgroup_replace_folio(9) page from the Kernel API Manual π
β it's short, it's sweet, and it's literally about swapping one folio's charge onto another. Let's get into it π
πΈ NAME πΈ
mem_cgroup_replace_folio β charge a folio's replacement. That's it, that's the whole vibe π«Ά
β SYNOPSIS β
void mem_cgroup_replace_folio (struct folio *old , struct folio *new );
Two folios walk in. Only one leaves with the charge π (and it's new, spoiler alert).
π¦ ARGUMENTS π¦
oldβ the folio that's currently circulating out here in the wild, main character of the moment. This one's on its way out π₯²newβ the replacement folio. The glow-up. The understudy stepping into the spotlight β¨
π DESCRIPTION π
So here's the tea, bestie: this function charges new as a replacement folio for old. Like, it hands the charge over. And old? She doesn't get charged anymore once she's freed β old will be uncharged upon free. Periodt π
Important, no cap: both folios must be locked, and new->mapping must be set up. Not optional, not negotiable, it's giving prerequisites π₯
π SEE ALSO π
Kernel file ./mm/memcontrol.c β and bestie, there is a whole friend group here, I'm obsessed. Go say hi:
get_mem_cgroup_css_from_folio(9)page_cgroup_ino(9)lruvec_page_state_monotonic(9)mod_memcg_state(9)mod_lruvec_state(9)count_memcg_events(9)get_mem_cgroup_from_mm(9)get_mem_cgroup_from_current(9)get_mem_cgroup_from_folio(9)mem_cgroup_iter(9)mem_cgroup_iter_break(9)mem_cgroup_scan_tasks(9)folio_lruvec_lock(9)folio_lruvec_lock_irq(9)folio_lruvec_lock_irqsave(9)mem_cgroup_update_lru_size(9)mem_cgroup_margin(9)mem_cgroup_print_oom_context(9)mem_cgroup_print_oom_meminfo(9)mem_cgroup_get_oom_group(9)consume_stock(9)__memcg_kmem_charge_page(9)__memcg_kmem_uncharge_page(9)mem_cgroup_wb_stats(9)mem_cgroup_from_private_id(9)mem_cgroup_css_reset(9)mem_cgroup_calculate_protection(9)mem_cgroup_charge_hugetlb(9)mem_cgroup_swapin_charge_folio(9)mem_cgroup_migrate(9)mem_cgroup_sk_charge(9)mem_cgroup_sk_uncharge(9)__mem_cgroup_try_charge_swap(9)__mem_cgroup_uncharge_swap(9)obj_cgroup_may_zswap(9)obj_cgroup_charge_zswap(9)obj_cgroup_uncharge_zswap(9)
Anyway bestie, that's the page π this one's from ./mm, dated October 2026, and it's the mem_cgroup_replace_folio(9) manual page. Slay, go lock your folios, ily π§ββοΈπ
π¦ where this page comes from
- nixpkgs unstable: linux-manual 7.3.1
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash-1017 on : a language model's rewrite of the original, under its terms