[Devel] Re: [PATCH 4/7] bio-cgroup: Split the cgroup memory subsystem into two parts
Hirokazu Takahashi
taka at valinux.co.jp
Tue Aug 5 03:35:51 PDT 2008
Hi, Andrea,
> you can remove some ifdefs doing:
I think you don't have to care about this much, since one of the following
patches removes most of these ifdefs.
> #ifdef CONFIG_CGROUP_MEM_RES_CTLR
> if (likely(!memcg)) {
> rcu_read_lock();
> mem = mem_cgroup_from_task(rcu_dereference(mm->owner));
> /*
> * For every charge from the cgroup, increment reference count
> */
> css_get(&mem->css);
> rcu_read_unlock();
> } else {
> mem = memcg;
> css_get(&memcg->css);
> }
> while (res_counter_charge(&mem->res, PAGE_SIZE)) {
> if (!(gfp_mask & __GFP_WAIT))
> goto out;
>
> if (try_to_free_mem_cgroup_pages(mem, gfp_mask))
> continue;
>
> /*
> * try_to_free_mem_cgroup_pages() might not give us a full
> * picture of reclaim. Some pages are reclaimed and might be
> * moved to swap cache or just unmapped from the cgroup.
> * Check the limit again to see if the reclaim reduced the
> * current usage of the cgroup before giving up
> */
> if (res_counter_check_under_limit(&mem->res))
> continue;
>
> if (!nr_retries--) {
> mem_cgroup_out_of_memory(mem, gfp_mask);
> goto out;
> }
> }
> pc->mem_cgroup = mem;
> #endif /* CONFIG_CGROUP_MEM_RES_CTLR */
> _______________________________________________
> Containers mailing list
> Containers at lists.linux-foundation.org
> https://lists.linux-foundation.org/mailman/listinfo/containers
_______________________________________________
Containers mailing list
Containers at lists.linux-foundation.org
https://lists.linux-foundation.org/mailman/listinfo/containers
More information about the Devel
mailing list