Quoting Michal Hocko (2018-10-16 19:21:55) > On Wed 17-10-18 01:43:00, Kuo-Hsin Yang wrote: > > The i915 driver use shmemfs to allocate backing storage for gem objects. > > These shmemfs pages can be pinned (increased ref count) by > > shmem_read_mapping_page_gfp(). When a lot of pages are pinned, vmscan > > wastes a lot of time scanning these pinned pages. Mark these pinned > > pages as unevictable to speed up vmscan. > > I would squash the two patches into the single one. One more thing > though. One more thing to be careful about here. Unless I miss something > such a page is not migrateable so it shouldn't be allocated from a > movable zone. Does mapping_gfp_constraint contains __GFP_MOVABLE? If > yes, we want to drop it as well. Other than that the patch makes sense > with my very limited knowlege of the i915 code of course. They are not migrateable today. But we have proposed hooking up .migratepage and setting __GFP_MOVABLE which would then include unlocking the mapping at migrate time. Fwiw, the shmem_unlock_mapping() call feels quite expensive, almost nullifying the advantage gained from not walking the lists in reclaim. I'll have better numbers in a couple of days. -Chris _______________________________________________ Intel-gfx mailing list Intel-gfx@xxxxxxxxxxxxxxxxxxxxx https://lists.freedesktop.org/mailman/listinfo/intel-gfx