On 07/24/2018 06:24 AM, Mike Kravetz wrote: > With v4.17, I can see an issue like those addressed in commits 3c605096d315 > ("mm/page_alloc: restrict max order of merging on isolated pageblock") > and d9dddbf55667 ("mm/page_alloc: prevent merging between isolated and > other pageblocks"). After running a CMA stress test for a while, I see: > MemTotal: 8168384 kB > MemFree: 8457232 kB > MemAvailable: 9204844 kB > If I let the test run, MemFree and MemAvailable will continue to grow. > > I am certain the issue is with pageblocks of migratetype ISOLATED. If > I disable all special 'is_migrate_isolate' checks in freepage accounting, > the issue goes away. That means you count isolated pages as freepages, right? > Further, I am pretty sure the issue has to do with > pageblock merging and or page orders spanning pageblocks. If I make > pageblock_order equal MAX_ORDER-1, the issue also goes away. Interesting, that should only matter in __free_one_page(). Do you have page guards enabled? > Just looking for suggesting in where/how to debug. I've been hacking on > this without much success. > -- > Mike Kravetz >