Lines Matching refs:stock

2078 	struct memcg_stock_pcp *stock;  in consume_stock()  local
2084 stock = &get_cpu_var(memcg_stock); in consume_stock()
2085 if (memcg == stock->cached && stock->nr_pages >= nr_pages) { in consume_stock()
2086 stock->nr_pages -= nr_pages; in consume_stock()
2096 static void drain_stock(struct memcg_stock_pcp *stock) in drain_stock() argument
2098 struct mem_cgroup *old = stock->cached; in drain_stock()
2100 if (stock->nr_pages) { in drain_stock()
2101 page_counter_uncharge(&old->memory, stock->nr_pages); in drain_stock()
2103 page_counter_uncharge(&old->memsw, stock->nr_pages); in drain_stock()
2104 css_put_many(&old->css, stock->nr_pages); in drain_stock()
2105 stock->nr_pages = 0; in drain_stock()
2107 stock->cached = NULL; in drain_stock()
2116 struct memcg_stock_pcp *stock = this_cpu_ptr(&memcg_stock); in drain_local_stock() local
2117 drain_stock(stock); in drain_local_stock()
2118 clear_bit(FLUSHING_CACHED_CHARGE, &stock->flags); in drain_local_stock()
2127 struct memcg_stock_pcp *stock = &get_cpu_var(memcg_stock); in refill_stock() local
2129 if (stock->cached != memcg) { /* reset if necessary */ in refill_stock()
2130 drain_stock(stock); in refill_stock()
2131 stock->cached = memcg; in refill_stock()
2133 stock->nr_pages += nr_pages; in refill_stock()
2152 struct memcg_stock_pcp *stock = &per_cpu(memcg_stock, cpu); in drain_all_stock() local
2155 memcg = stock->cached; in drain_all_stock()
2156 if (!memcg || !stock->nr_pages) in drain_all_stock()
2160 if (!test_and_set_bit(FLUSHING_CACHED_CHARGE, &stock->flags)) { in drain_all_stock()
2162 drain_local_stock(&stock->work); in drain_all_stock()
2164 schedule_work_on(cpu, &stock->work); in drain_all_stock()
2201 struct memcg_stock_pcp *stock; in memcg_cpu_hotplug_callback() local
2213 stock = &per_cpu(memcg_stock, cpu); in memcg_cpu_hotplug_callback()
2214 drain_stock(stock); in memcg_cpu_hotplug_callback()