Lines Matching refs:nr_pages
261 unsigned int nr_pages; in obj_cgroup_release() local
286 nr_pages = nr_bytes >> PAGE_SHIFT; in obj_cgroup_release()
290 if (nr_pages) in obj_cgroup_release()
291 __memcg_kmem_uncharge(memcg, nr_pages); in obj_cgroup_release()
670 unsigned long nr_pages = page_counter_read(&memcg->memory); in soft_limit_excess() local
674 if (nr_pages > soft_limit) in soft_limit_excess()
675 excess = nr_pages - soft_limit; in soft_limit_excess()
944 int nr_pages) in mem_cgroup_charge_statistics() argument
947 if (nr_pages > 0) in mem_cgroup_charge_statistics()
951 nr_pages = -nr_pages; /* for event */ in mem_cgroup_charge_statistics()
954 __this_cpu_add(memcg->vmstats_percpu->nr_page_events, nr_pages); in mem_cgroup_charge_statistics()
1419 int zid, int nr_pages) in mem_cgroup_update_lru_size() argument
1431 if (nr_pages < 0) in mem_cgroup_update_lru_size()
1432 *lru_size += nr_pages; in mem_cgroup_update_lru_size()
1437 __func__, lruvec, lru, nr_pages, size)) { in mem_cgroup_update_lru_size()
1442 if (nr_pages > 0) in mem_cgroup_update_lru_size()
1443 *lru_size += nr_pages; in mem_cgroup_update_lru_size()
2237 unsigned int nr_pages; member
2278 static bool consume_stock(struct mem_cgroup *memcg, unsigned int nr_pages) in consume_stock() argument
2284 if (nr_pages > MEMCG_CHARGE_BATCH) in consume_stock()
2290 if (memcg == stock->cached && stock->nr_pages >= nr_pages) { in consume_stock()
2291 stock->nr_pages -= nr_pages; in consume_stock()
2310 if (stock->nr_pages) { in drain_stock()
2311 page_counter_uncharge(&old->memory, stock->nr_pages); in drain_stock()
2313 page_counter_uncharge(&old->memsw, stock->nr_pages); in drain_stock()
2314 stock->nr_pages = 0; in drain_stock()
2344 static void refill_stock(struct mem_cgroup *memcg, unsigned int nr_pages) in refill_stock() argument
2357 stock->nr_pages += nr_pages; in refill_stock()
2359 if (stock->nr_pages > MEMCG_CHARGE_BATCH) in refill_stock()
2390 if (memcg && stock->nr_pages && in drain_all_stock()
2458 unsigned int nr_pages, in reclaim_high() argument
2473 nr_reclaimed += try_to_free_mem_cgroup_pages(memcg, nr_pages, in reclaim_high()
2596 unsigned int nr_pages, in calculate_high_delay() argument
2624 return penalty_jiffies * nr_pages / MEMCG_CHARGE_BATCH; in calculate_high_delay()
2636 unsigned int nr_pages = current->memcg_nr_pages_over_high; in mem_cgroup_handle_over_high() local
2641 if (likely(!nr_pages)) in mem_cgroup_handle_over_high()
2658 in_retry ? SWAP_CLUSTER_MAX : nr_pages, in mem_cgroup_handle_over_high()
2665 penalty_jiffies = calculate_high_delay(memcg, nr_pages, in mem_cgroup_handle_over_high()
2668 penalty_jiffies += calculate_high_delay(memcg, nr_pages, in mem_cgroup_handle_over_high()
2711 unsigned int nr_pages) in try_charge() argument
2713 unsigned int batch = max(MEMCG_CHARGE_BATCH, nr_pages); in try_charge()
2727 if (consume_stock(memcg, nr_pages)) in try_charge()
2742 if (batch > nr_pages) { in try_charge()
2743 batch = nr_pages; in try_charge()
2774 nr_reclaimed = try_to_free_mem_cgroup_pages(mem_over_limit, nr_pages, in try_charge()
2778 if (mem_cgroup_margin(mem_over_limit) >= nr_pages) in try_charge()
2798 if (nr_reclaimed && nr_pages <= (1 << PAGE_ALLOC_COSTLY_ORDER)) in try_charge()
2826 get_order(nr_pages * PAGE_SIZE)); in try_charge()
2841 page_counter_charge(&memcg->memory, nr_pages); in try_charge()
2843 page_counter_charge(&memcg->memsw, nr_pages); in try_charge()
2848 if (batch > nr_pages) in try_charge()
2849 refill_stock(memcg, batch - nr_pages); in try_charge()
2897 static void cancel_charge(struct mem_cgroup *memcg, unsigned int nr_pages) in cancel_charge() argument
2902 page_counter_uncharge(&memcg->memory, nr_pages); in cancel_charge()
2904 page_counter_uncharge(&memcg->memsw, nr_pages); in cancel_charge()
3075 unsigned int nr_pages) in __memcg_kmem_charge() argument
3080 ret = try_charge(memcg, gfp, nr_pages); in __memcg_kmem_charge()
3085 !page_counter_try_charge(&memcg->kmem, nr_pages, &counter)) { in __memcg_kmem_charge()
3093 page_counter_charge(&memcg->kmem, nr_pages); in __memcg_kmem_charge()
3096 cancel_charge(memcg, nr_pages); in __memcg_kmem_charge()
3107 void __memcg_kmem_uncharge(struct mem_cgroup *memcg, unsigned int nr_pages) in __memcg_kmem_uncharge() argument
3110 page_counter_uncharge(&memcg->kmem, nr_pages); in __memcg_kmem_uncharge()
3112 refill_stock(memcg, nr_pages); in __memcg_kmem_uncharge()
3149 unsigned int nr_pages = 1 << order; in __memcg_kmem_uncharge_page() local
3155 __memcg_kmem_uncharge(memcg, nr_pages); in __memcg_kmem_uncharge_page()
3191 unsigned int nr_pages = stock->nr_bytes >> PAGE_SHIFT; in drain_obj_stock() local
3194 if (nr_pages) { in drain_obj_stock()
3204 __memcg_kmem_uncharge(memcg, nr_pages); in drain_obj_stock()
3265 unsigned int nr_pages, nr_bytes; in obj_cgroup_charge() local
3288 nr_pages = size >> PAGE_SHIFT; in obj_cgroup_charge()
3292 nr_pages += 1; in obj_cgroup_charge()
3294 ret = __memcg_kmem_charge(memcg, gfp, nr_pages); in obj_cgroup_charge()
3877 unsigned long nr_pages; in mem_cgroup_write() local
3881 ret = page_counter_memparse(buf, "-1", &nr_pages); in mem_cgroup_write()
3893 ret = mem_cgroup_resize_max(memcg, nr_pages, false); in mem_cgroup_write()
3896 ret = mem_cgroup_resize_max(memcg, nr_pages, true); in mem_cgroup_write()
3902 ret = memcg_update_kmem_max(memcg, nr_pages); in mem_cgroup_write()
3905 ret = memcg_update_tcp_max(memcg, nr_pages); in mem_cgroup_write()
3910 memcg->soft_limit = nr_pages; in mem_cgroup_write()
5691 unsigned int nr_pages = compound ? thp_nr_pages(page) : 1; in mem_cgroup_move_account() local
5718 __mod_lruvec_state(from_vec, NR_ANON_MAPPED, -nr_pages); in mem_cgroup_move_account()
5719 __mod_lruvec_state(to_vec, NR_ANON_MAPPED, nr_pages); in mem_cgroup_move_account()
5727 __mod_lruvec_state(from_vec, NR_FILE_PAGES, -nr_pages); in mem_cgroup_move_account()
5728 __mod_lruvec_state(to_vec, NR_FILE_PAGES, nr_pages); in mem_cgroup_move_account()
5731 __mod_lruvec_state(from_vec, NR_SHMEM, -nr_pages); in mem_cgroup_move_account()
5732 __mod_lruvec_state(to_vec, NR_SHMEM, nr_pages); in mem_cgroup_move_account()
5736 __mod_lruvec_state(from_vec, NR_FILE_MAPPED, -nr_pages); in mem_cgroup_move_account()
5737 __mod_lruvec_state(to_vec, NR_FILE_MAPPED, nr_pages); in mem_cgroup_move_account()
5745 -nr_pages); in mem_cgroup_move_account()
5747 nr_pages); in mem_cgroup_move_account()
5753 __mod_lruvec_state(from_vec, NR_WRITEBACK, -nr_pages); in mem_cgroup_move_account()
5754 __mod_lruvec_state(to_vec, NR_WRITEBACK, nr_pages); in mem_cgroup_move_account()
5782 mem_cgroup_charge_statistics(to, page, nr_pages); in mem_cgroup_move_account()
5784 mem_cgroup_charge_statistics(from, page, -nr_pages); in mem_cgroup_move_account()
6374 unsigned long nr_pages = page_counter_read(&memcg->memory); in memory_high_write() local
6377 if (nr_pages <= high) in memory_high_write()
6389 reclaimed = try_to_free_mem_cgroup_pages(memcg, nr_pages - high, in memory_high_write()
6423 unsigned long nr_pages = page_counter_read(&memcg->memory); in memory_max_write() local
6425 if (nr_pages <= max) in memory_max_write()
6438 if (!try_to_free_mem_cgroup_pages(memcg, nr_pages - max, in memory_max_write()
6817 unsigned int nr_pages = thp_nr_pages(page); in __mem_cgroup_charge() local
6847 ret = try_charge(memcg, gfp_mask, nr_pages); in __mem_cgroup_charge()
6855 mem_cgroup_charge_statistics(memcg, page, nr_pages); in __mem_cgroup_charge()
6878 mem_cgroup_uncharge_swap(entry, nr_pages); in __mem_cgroup_charge()
6889 unsigned long nr_pages; member
6905 page_counter_uncharge(&ug->memcg->memory, ug->nr_pages); in uncharge_batch()
6907 page_counter_uncharge(&ug->memcg->memsw, ug->nr_pages); in uncharge_batch()
6915 __this_cpu_add(ug->memcg->vmstats_percpu->nr_page_events, ug->nr_pages); in uncharge_batch()
6925 unsigned long nr_pages; in uncharge_page() local
6949 nr_pages = compound_nr(page); in uncharge_page()
6950 ug->nr_pages += nr_pages; in uncharge_page()
6955 ug->nr_kmem += nr_pages; in uncharge_page()
7034 unsigned int nr_pages; in mem_cgroup_migrate() local
7056 nr_pages = thp_nr_pages(newpage); in mem_cgroup_migrate()
7058 page_counter_charge(&memcg->memory, nr_pages); in mem_cgroup_migrate()
7060 page_counter_charge(&memcg->memsw, nr_pages); in mem_cgroup_migrate()
7066 mem_cgroup_charge_statistics(memcg, newpage, nr_pages); in mem_cgroup_migrate()
7111 bool mem_cgroup_charge_skmem(struct mem_cgroup *memcg, unsigned int nr_pages) in mem_cgroup_charge_skmem() argument
7118 if (page_counter_try_charge(&memcg->tcpmem, nr_pages, &fail)) { in mem_cgroup_charge_skmem()
7122 page_counter_charge(&memcg->tcpmem, nr_pages); in mem_cgroup_charge_skmem()
7131 mod_memcg_state(memcg, MEMCG_SOCK, nr_pages); in mem_cgroup_charge_skmem()
7133 if (try_charge(memcg, gfp_mask, nr_pages) == 0) in mem_cgroup_charge_skmem()
7136 try_charge(memcg, gfp_mask|__GFP_NOFAIL, nr_pages); in mem_cgroup_charge_skmem()
7145 void mem_cgroup_uncharge_skmem(struct mem_cgroup *memcg, unsigned int nr_pages) in mem_cgroup_uncharge_skmem() argument
7148 page_counter_uncharge(&memcg->tcpmem, nr_pages); in mem_cgroup_uncharge_skmem()
7152 mod_memcg_state(memcg, MEMCG_SOCK, -nr_pages); in mem_cgroup_uncharge_skmem()
7154 refill_stock(memcg, nr_pages); in mem_cgroup_uncharge_skmem()
7305 unsigned int nr_pages = thp_nr_pages(page); in __mem_cgroup_try_charge_swap() local
7327 !page_counter_try_charge(&memcg->swap, nr_pages, &counter)) { in __mem_cgroup_try_charge_swap()
7335 if (nr_pages > 1) in __mem_cgroup_try_charge_swap()
7336 mem_cgroup_id_get_many(memcg, nr_pages - 1); in __mem_cgroup_try_charge_swap()
7337 oldid = swap_cgroup_record(entry, mem_cgroup_id(memcg), nr_pages); in __mem_cgroup_try_charge_swap()
7339 mod_memcg_state(memcg, MEMCG_SWAP, nr_pages); in __mem_cgroup_try_charge_swap()
7349 void __mem_cgroup_uncharge_swap(swp_entry_t entry, unsigned int nr_pages) in __mem_cgroup_uncharge_swap() argument
7354 id = swap_cgroup_record(entry, 0, nr_pages); in __mem_cgroup_uncharge_swap()
7360 page_counter_uncharge(&memcg->swap, nr_pages); in __mem_cgroup_uncharge_swap()
7362 page_counter_uncharge(&memcg->memsw, nr_pages); in __mem_cgroup_uncharge_swap()
7364 mod_memcg_state(memcg, MEMCG_SWAP, -nr_pages); in __mem_cgroup_uncharge_swap()
7365 mem_cgroup_id_put_many(memcg, nr_pages); in __mem_cgroup_uncharge_swap()