|
@@ -1469,12 +1469,7 @@ static void mem_cgroup_start_move(struct mem_cgroup *memcg)
|
|
|
|
|
|
static void mem_cgroup_end_move(struct mem_cgroup *memcg)
|
|
|
{
|
|
|
- /*
|
|
|
- * Now, mem_cgroup_clear_mc() may call this function with NULL.
|
|
|
- * We check NULL in callee rather than caller.
|
|
|
- */
|
|
|
- if (memcg)
|
|
|
- atomic_dec(&memcg->moving_account);
|
|
|
+ atomic_dec(&memcg->moving_account);
|
|
|
}
|
|
|
|
|
|
/*
|
|
@@ -5489,7 +5484,8 @@ static int mem_cgroup_can_attach(struct cgroup_subsys_state *css,
|
|
|
static void mem_cgroup_cancel_attach(struct cgroup_subsys_state *css,
|
|
|
struct cgroup_taskset *tset)
|
|
|
{
|
|
|
- mem_cgroup_clear_mc();
|
|
|
+ if (mc.to)
|
|
|
+ mem_cgroup_clear_mc();
|
|
|
}
|
|
|
|
|
|
static int mem_cgroup_move_charge_pte_range(pmd_t *pmd,
|