On Tue, Apr 16, 2013 at 06:11:44PM -0700, Michal Hocko wrote: >On Wed 17-04-13 08:36:28, Wanpeng Li wrote: >> Changelog: >> * add comments from Andi which indicate shrink gigantic hugetlb page pools make >> sense to patchset description. >> >> order >= MAX_ORDER pages are only allocated at boot stage using the >> bootmem allocator with the "hugepages=xxx" option. These pages are never >> free after boot by default since it would be a one-way street(>= MAX_ORDER >> pages cannot be allocated later), but if administrator confirm not to >> use these gigantic pages any more, these pinned pages will waste memory >> since other users can't grab free pages from gigantic hugetlb pool even >> if OOM, it's not flexible. The patchset add hugetlb gigantic page pools >> shrink supporting. Administrator can enable knob exported in sysctl to >> permit to shrink gigantic hugetlb pool. >> >> http://marc.info/?l=linux-mm&m=136578016214512&w=2 >> Andi thinks this idea make sense since he is working on a new patchkit to >> allocate GB pages from CMA. With that freeing actually makes sense, as the >> pages can be reallocated. > >But that is not implemented yet... > >> >> Testcase: >> boot: hugepagesz=1G hugepages=10 >> >> [root@localhost hugepages]# free -m >> total used free shared buffers cached >> Mem: 36269 10836 25432 0 11 288 >> -/+ buffers/cache: 10537 25732 >> Swap: 35999 0 35999 >> [root@localhost hugepages]# echo 0 > /sys/kernel/mm/hugepages/hugepages-1048576kB/nr_hugepages >> -bash: echo: write error: Invalid argument >> [root@localhost hugepages]# echo 1 > /proc/sys/vm/hugetlb_shrink_gigantic_pool > >I have asked that already but it didn't get answered. What is the reason >for an explicit knob to enable this? It just adds an additional code and >it doesn't make much sense to me to be honest. Make sense to me, it seems that I don't need to add this redundant knob and just let gigantic hugetlb pages pool shrink awareness after Andi's patchkit merged. ;-) Regards, Wanpeng Li > >[...] >-- >Michal Hocko >SUSE Labs -- 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/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>