Lines Matching refs:mc

383 } mc = {  variable
384 .lock = __SPIN_LOCK_UNLOCKED(mc.lock),
385 .waitq = __WAIT_QUEUE_HEAD_INITIALIZER(mc.waitq),
1401 spin_lock(&mc.lock); in mem_cgroup_under_move()
1402 from = mc.from; in mem_cgroup_under_move()
1403 to = mc.to; in mem_cgroup_under_move()
1410 spin_unlock(&mc.lock); in mem_cgroup_under_move()
1416 if (mc.moving_task && current != mc.moving_task) { in mem_cgroup_wait_acct_move()
1419 prepare_to_wait(&mc.waitq, &wait, TASK_INTERRUPTIBLE); in mem_cgroup_wait_acct_move()
1421 if (mc.moving_task) in mem_cgroup_wait_acct_move()
1423 finish_wait(&mc.waitq, &wait); in mem_cgroup_wait_acct_move()
4593 ret = try_charge(mc.to, GFP_KERNEL & ~__GFP_WAIT, count); in mem_cgroup_do_precharge()
4595 mc.precharge += count; in mem_cgroup_do_precharge()
4605 ret = try_charge(mc.to, GFP_KERNEL & ~__GFP_NORETRY, 1); in mem_cgroup_do_precharge()
4616 mc.precharge++; in mem_cgroup_do_precharge()
4659 if (!(mc.flags & MOVE_ANON)) in mc_handle_present_pte()
4662 if (!(mc.flags & MOVE_FILE)) in mc_handle_present_pte()
4678 if (!(mc.flags & MOVE_ANON) || non_swap_entry(ent)) in mc_handle_swap_pte()
4707 if (!(mc.flags & MOVE_FILE)) in mc_handle_file_pte()
4840 if (page->mem_cgroup == mc.from) { in get_mctgt_type()
4850 mem_cgroup_id(mc.from) == lookup_swap_cgroup_id(ent)) { in get_mctgt_type()
4872 if (!(mc.flags & MOVE_ANON)) in get_mctgt_type_thp()
4874 if (page->mem_cgroup == mc.from) { in get_mctgt_type_thp()
4901 mc.precharge += HPAGE_PMD_NR; in mem_cgroup_count_precharge_pte_range()
4911 mc.precharge++; /* increment precharge temporarily */ in mem_cgroup_count_precharge_pte_range()
4930 precharge = mc.precharge; in mem_cgroup_count_precharge()
4931 mc.precharge = 0; in mem_cgroup_count_precharge()
4940 VM_BUG_ON(mc.moving_task); in mem_cgroup_precharge_mc()
4941 mc.moving_task = current; in mem_cgroup_precharge_mc()
4948 struct mem_cgroup *from = mc.from; in __mem_cgroup_clear_mc()
4949 struct mem_cgroup *to = mc.to; in __mem_cgroup_clear_mc()
4952 if (mc.precharge) { in __mem_cgroup_clear_mc()
4953 cancel_charge(mc.to, mc.precharge); in __mem_cgroup_clear_mc()
4954 mc.precharge = 0; in __mem_cgroup_clear_mc()
4960 if (mc.moved_charge) { in __mem_cgroup_clear_mc()
4961 cancel_charge(mc.from, mc.moved_charge); in __mem_cgroup_clear_mc()
4962 mc.moved_charge = 0; in __mem_cgroup_clear_mc()
4965 if (mc.moved_swap) { in __mem_cgroup_clear_mc()
4967 if (!mem_cgroup_is_root(mc.from)) in __mem_cgroup_clear_mc()
4968 page_counter_uncharge(&mc.from->memsw, mc.moved_swap); in __mem_cgroup_clear_mc()
4974 if (!mem_cgroup_is_root(mc.to)) in __mem_cgroup_clear_mc()
4975 page_counter_uncharge(&mc.to->memory, mc.moved_swap); in __mem_cgroup_clear_mc()
4977 css_put_many(&mc.from->css, mc.moved_swap); in __mem_cgroup_clear_mc()
4980 mc.moved_swap = 0; in __mem_cgroup_clear_mc()
4984 wake_up_all(&mc.waitq); in __mem_cgroup_clear_mc()
4993 mc.moving_task = NULL; in mem_cgroup_clear_mc()
4995 spin_lock(&mc.lock); in mem_cgroup_clear_mc()
4996 mc.from = NULL; in mem_cgroup_clear_mc()
4997 mc.to = NULL; in mem_cgroup_clear_mc()
4998 spin_unlock(&mc.lock); in mem_cgroup_clear_mc()
5026 VM_BUG_ON(mc.from); in mem_cgroup_can_attach()
5027 VM_BUG_ON(mc.to); in mem_cgroup_can_attach()
5028 VM_BUG_ON(mc.precharge); in mem_cgroup_can_attach()
5029 VM_BUG_ON(mc.moved_charge); in mem_cgroup_can_attach()
5030 VM_BUG_ON(mc.moved_swap); in mem_cgroup_can_attach()
5032 spin_lock(&mc.lock); in mem_cgroup_can_attach()
5033 mc.from = from; in mem_cgroup_can_attach()
5034 mc.to = memcg; in mem_cgroup_can_attach()
5035 mc.flags = move_flags; in mem_cgroup_can_attach()
5036 spin_unlock(&mc.lock); in mem_cgroup_can_attach()
5051 if (mc.to) in mem_cgroup_cancel_attach()
5078 if (mc.precharge < HPAGE_PMD_NR) { in mem_cgroup_move_charge_pte_range()
5087 mc.from, mc.to)) { in mem_cgroup_move_charge_pte_range()
5088 mc.precharge -= HPAGE_PMD_NR; in mem_cgroup_move_charge_pte_range()
5089 mc.moved_charge += HPAGE_PMD_NR; in mem_cgroup_move_charge_pte_range()
5107 if (!mc.precharge) in mem_cgroup_move_charge_pte_range()
5115 if (!mem_cgroup_move_account(page, 1, mc.from, mc.to)) { in mem_cgroup_move_charge_pte_range()
5116 mc.precharge--; in mem_cgroup_move_charge_pte_range()
5118 mc.moved_charge++; in mem_cgroup_move_charge_pte_range()
5126 if (!mem_cgroup_move_swap_account(ent, mc.from, mc.to)) { in mem_cgroup_move_charge_pte_range()
5127 mc.precharge--; in mem_cgroup_move_charge_pte_range()
5129 mc.moved_swap++; in mem_cgroup_move_charge_pte_range()
5167 atomic_inc(&mc.from->moving_account); in mem_cgroup_move_charge()
5188 atomic_dec(&mc.from->moving_account); in mem_cgroup_move_charge()
5198 if (mc.to) in mem_cgroup_move_task()
5202 if (mc.to) in mem_cgroup_move_task()