On Wed, 11.09.13 09:18, Gao feng (gaof...@cn.fujitsu.com) wrote:

> >> The SYSTEMD.CGROUP(5) said if MemoryLimit=bytes is set for unit, it
> >> implies MemeoryAccounting=true for this unit.
> >>
> >> But seems systemd didn't implement this hint. CPUShares & BlockIO have
> >> the same problem, this is a shortage? patch needed?
> > 
> > 
> > The logic for this is in src/core/cgroup.c's cgroup_context_get_mask()
> > call, which will determine to which cgroup controllers to add a unit
> > to. Note that setting MemoryLimit= will not actually propagate to the
> > boolean exposed in MemoryAccounting=, it will just have the same effect
> > as if it was set...
> > 
> 
> Maybe we should also report "MemoryAccounting=yes" in cgroup_context_dump
> if we set MemoryLimit.

What I don't really like about this is that we allow MemoryLimit to be
altered dynamically, which would then need to influence
MemoryAccounting= dynamically too. WHich means that we would have to
shadow that field so that we can revert to the originally configured
value. Also, it would have very weird effects if people then try to
dynamically unset MemoryAccounting which would either possibly be a NOP
or would have the effect of resseting MemoryLimit... If you follow what
I mean.

All that makes me want to keep it the way it is right now...

Lennart

-- 
Lennart Poettering - Red Hat, Inc.
_______________________________________________
systemd-devel mailing list
systemd-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/systemd-devel

Reply via email to