On Thu, Nov 16, 2017 at 08:43:17PM -0800, Shakeel Butt wrote: > On Thu, Nov 16, 2017 at 7:09 PM, Yafang Shao <laoar.shao@xxxxxxxxx> wrote: > > Currently the default tmpfs size is totalram_pages / 2 if mount tmpfs > > without "-o size=XXX". > > When we mount tmpfs in a container(i.e. docker), it is also > > totalram_pages / 2 regardless of the memory limit on this container. > > That may easily cause OOM if tmpfs occupied too much memory when swap is > > off. > > So when we mount tmpfs in a memcg, the default size should be limited by > > the memcg memory.limit. > > > > The pages of the tmpfs files are charged to the memcg of allocators > which can be in memcg different from the memcg in which the mount > operation happened. So, tying the size of a tmpfs mount where it was > mounted does not make much sense. Also, memory limit is adjustable, and using a particular limit value at a moment of tmpfs mounting doesn't provide any warranties further. Is there a reason why the userspace app which is mounting tmpfs can't set the size based on memory.limit? -- To unsubscribe from this list: send the line "unsubscribe cgroups" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html