OpenVZ Forum


Home » Mailing lists » Devel » [PATCH v8 0/9] per-cgroup tcp memory pressure controls
Re: [PATCH v8 1/9] Basic kernel memory functionality for the Memory Controller [message #44476 is a reply to message #44390] Fri, 09 December 2011 14:48 Go to previous messageGo to previous message
Glauber Costa is currently offline  Glauber Costa
Messages: 916
Registered: October 2011
Senior Member
On 12/09/2011 12:44 PM, David Laight wrote:
>
>> How about this?
>>
>> val = !!val;
>>
>> /*
>> * This follows the same hierarchy restrictions than
>> * mem_cgroup_hierarchy_write()
>> */
>> if (!parent || !parent->use_hierarchy) {
>> if (list_empty(&cgroup->children))
>> memcg->kmem_independent_accounting = val;
>> else
>> return -EBUSY;
>> }
>> else
>> return -EINVAL;
>>
>> return 0;
>
> Inverting the tests gives easier to read code:
>
> if (parent&& parent->user_hierarchy)
> return -EINVAL;
> if (!list_empty(&cgroup->children))
> return -EBUSY;
> memcg->kmem_independent_accounting = val != 0;
> return 0;

On the other hand, inconsistent with mem_cgroup_hierarchy_write(), which
applies the logic in the same way I did here.

> NFI about the logic...
> On the face of it the tests don't seem related to each other
> or to the assignment!

How so?

If parent's use_hierarchy is set, we can't set this value (we need to
have a parent for that to even matter).

We also can't set it if we already have any children - otherwise all the
on-the-fly adjustments become hell-on-earth.

As for = val != 0, sorry, but I completely disagree this is easier than
!!val. Not to mention the !!val notation is already pretty widespread in
the kernel.

> David
>
>
>
>
> --
> To unsubscribe, send a message with 'unsubscribe linux-mm' in
> the body to majordomo@kvack.org. For more info on Linux MM,
> see: http://www.linux-mm.org/ .
> Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/
> Don't email:<a href=ilto:"dont@kvack.org"> email@kvack.org</a>
 
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Read Message
Previous Topic: Re: [PATCH] make clone_children a flag
Next Topic: How to draw values for /proc/stat
Goto Forum:
  


Current Time: Mon Oct 06 18:39:20 GMT 2025

Total time taken to generate the page: 0.22582 seconds