On Tue, 29 May 2012, Gao feng wrote: > cgroup and namespaces are used for creating containers but some of > information is not isolated/virtualized. This patch is for isolating /proc/meminfo > information per container, which uses memory cgroup. By this, top,free > and other tools under container can work as expected(show container's > usage) without changes. > > This patch is a trial to show memcg's info in /proc/meminfo if 'current' > is under a memcg other than root. > > we show /proc/meminfo base on container's memory cgroup. > because there are lots of info can't be provide by memcg, and > the cmds such as top, free just use some entries of /proc/meminfo, > we replace those entries by memory cgroup. > > if container has no memcg, we will show host's /proc/meminfo > as before. > > there is no idea how to deal with Buffers,I just set it zero, > It's strange if Buffers bigger than MemTotal. > > Signed-off-by: Gao feng <gaofeng@xxxxxxxxxxxxxx> Nack, this type of thing was initially tried with cpusets when a thread was bound to a subset of nodes, i.e. only show the total amount of memory spanned by those nodes. For your particular interest, this information is already available elsewhere: memory.limit_in_bytes and memory.usage_in_bytes and that should be the interface where this is attained via /proc/cgroups. Why? Because the information exported by /proc/meminfo is considered by applications to be static whereas the limit of a memcg may change without any knowledge of the application. Applications which need to know the amount of memory they are constrained to are assuming that there are no other consumers of memory on the system and thus they should be written to understand memcg limits just like they should understand cpusets (through either /proc/cgroups or /proc/cpuset). -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. 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=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>