Re: [PATCH v5] mm, drm/i915: mark pinned shmemfs pages as unevictable

From: Kuo-Hsin Yang
Date: Tue Nov 06 2018 - 04:19:29 EST


On Tue, Nov 6, 2018 at 5:08 PM Michal Hocko <mhocko@xxxxxxxxxx> wrote:
>
> On Tue 06-11-18 17:03:51, Kuo-Hsin Yang wrote:
> > The i915 driver uses 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. In some extreme case,
> > all pages in the inactive anon lru are pinned, and only the inactive
> > anon lru is scanned due to inactive_ratio, the system cannot swap and
> > invokes the oom-killer. Mark these pinned pages as unevictable to speed
> > up vmscan.
> >
> > Export pagevec API check_move_unevictable_pages().
> >
> > This patch was inspired by Chris Wilson's change [1].
> >
> > [1]: https://patchwork.kernel.org/patch/9768741/
> >
> > Cc: Chris Wilson <chris@xxxxxxxxxxxxxxxxxx>
> > Cc: Joonas Lahtinen <joonas.lahtinen@xxxxxxxxxxxxxxx>
> > Cc: Peter Zijlstra <peterz@xxxxxxxxxxxxx>
> > Cc: Andrew Morton <akpm@xxxxxxxxxxxxxxxxxxxx>
> > Cc: Dave Hansen <dave.hansen@xxxxxxxxx>
> > Signed-off-by: Kuo-Hsin Yang <vovoy@xxxxxxxxxxxx>
> > Acked-by: Michal Hocko <mhocko@xxxxxxxx>
>
> please make it explicit that the ack applies to mm part as i've
> mentioned when giving my ack to the previous version.
>
> E.g.
> Acked-by: Michal Hocko <mhocko@xxxxxxx> # mm part
>
> because i am not familiar with the drm code to ack any changes there.

Got it. Thanks.