Messages in this thread | | | Date | Wed, 15 Aug 2012 17:51:40 +0400 | From | Glauber Costa <> | Subject | Re: [PATCH v2 07/11] mm: Allocate kernel pages to the right memcg |
| |
On 08/15/2012 05:22 PM, Mel Gorman wrote: >> I believe it >> > to be a better and less complicated approach then letting a page appear >> > and then charging it. Besides being consistent with the rest of memcg, >> > it won't create unnecessary disturbance in the page allocator >> > when the allocation is to fail. >> > > I still don't get why you did not just return a mem_cgroup instead of a > handle. >
Forgot this one, sorry:
The reason is to keep the semantics simple.
What should we return if the code is not compiled in? If we return NULL for failure, the test becomes
memcg = memcg_kmem_charge_page(gfp, order); if (!memcg) exit;
If we're not compiled in, we'd either return positive garbage or we need to wrap it inside an ifdef
I personally believe to be a lot more clear to standardize on true to mean "allocation can proceed".
the compiled out case becomes:
if (!true) exit;
which is easily compiled away altogether. Now of course, using struct mem_cgroup makes sense, and I have already changed that here.
| |