Messages in this thread | ![/](/images/icornerl.gif) | | Date | Sat, 30 Jan 2021 00:48:59 -0800 (PST) | From | David Rientjes <> | Subject | Re: [PATCH v3] mm/page_alloc: count CMA pages per zone and print them in /proc/zoneinfo |
| |
On Fri, 29 Jan 2021, David Hildenbrand wrote:
> Let's count the number of CMA pages per zone and print them in > /proc/zoneinfo. > > Having access to the total number of CMA pages per zone is helpful for > debugging purposes to know where exactly the CMA pages ended up, and to > figure out how many pages of a zone might behave differently, even after > some of these pages might already have been allocated. > > As one example, CMA pages part of a kernel zone cannot be used for > ordinary kernel allocations but instead behave more like ZONE_MOVABLE. > > For now, we are only able to get the global nr+free cma pages from > /proc/meminfo and the free cma pages per zone from /proc/zoneinfo. > > Example after this patch when booting a 6 GiB QEMU VM with > "hugetlb_cma=2G": > # cat /proc/zoneinfo | grep cma > cma 0 > nr_free_cma 0 > cma 0 > nr_free_cma 0 > cma 524288 > nr_free_cma 493016 > cma 0 > cma 0 > # cat /proc/meminfo | grep Cma > CmaTotal: 2097152 kB > CmaFree: 1972064 kB > > Note: We print even without CONFIG_CMA, just like "nr_free_cma"; this way, > one can be sure when spotting "cma 0", that there are definetly no > CMA pages located in a zone. > > Cc: Andrew Morton <akpm@linux-foundation.org> > Cc: Thomas Gleixner <tglx@linutronix.de> > Cc: "Peter Zijlstra (Intel)" <peterz@infradead.org> > Cc: Mike Rapoport <rppt@kernel.org> > Cc: Oscar Salvador <osalvador@suse.de> > Cc: Michal Hocko <mhocko@kernel.org> > Cc: Wei Yang <richard.weiyang@linux.alibaba.com> > Cc: David Rientjes <rientjes@google.com> > Cc: linux-api@vger.kernel.org > Signed-off-by: David Hildenbrand <david@redhat.com>
Acked-by: David Rientjes <rientjes@google.com>
| ![\](/images/icornerr.gif) |