Re: [RFC][PATCH 0/4] Memory controller soft limit patches (v2)

From: KAMEZAWA Hiroyuki
Date: Mon Feb 16 2009 - 19:06:50 EST


On Mon, 16 Feb 2009 16:38:44 +0530
Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx> wrote:

>
> From: Balbir Singh <balbir@xxxxxxxxxxxxxxxxxx>
>
> Changelog v2...v1
> 1. Soft limits now support hierarchies
> 2. Use spinlocks instead of mutexes for synchronization of the RB tree
>
> Here is v2 of the new soft limit implementation. Soft limits is a new feature
> for the memory resource controller, something similar has existed in the
> group scheduler in the form of shares. The CPU controllers interpretation
> of shares is very different though. We'll compare shares and soft limits
> below.
>
> Soft limits are the most useful feature to have for environments where
> the administrator wants to overcommit the system, such that only on memory
> contention do the limits become active. The current soft limits implementation
> provides a soft_limit_in_bytes interface for the memory controller and not
> for memory+swap controller. The implementation maintains an RB-Tree of groups
> that exceed their soft limit and starts reclaiming from the group that
> exceeds this limit by the maximum amount.
>
> This is an RFC implementation and is not meant for inclusion
>

some thoughts after reading patch.

1. As I pointed out, cpuset/mempolicy case is not handled yet.
2. I don't like to change usual direct-memory-reclaim path. It will be obstacles
for VM-maintaners to improve memory reclaim. memcg's LRU is designed for
shrinking memory usage and not for avoiding memory shortage. IOW, it's slow routine
for reclaiming memory for memory shortage.
3. After this patch, res_counter is no longer for general purpose res_counter...
It seems to have too many unnecessary accessories for general purpose.
4. please use css_tryget() rather than mem_cgroup_get().
5. please remove mem_cgroup from tree at force_empty or rmdir.
Just making memcg->on_tree=false is enough ? I'm in doubt.
6. What happens when the-largest-soft-limit-memcg has tons on Anon on swapless
system and memory reclaim cannot make enough progress ?

Thanks,
-Kame


--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/