diff options
| author | Kuo-Hsin Yang <[email protected]> | 2018-11-06 13:23:24 +0000 |
|---|---|---|
| committer | Chris Wilson <[email protected]> | 2018-11-07 15:28:32 +0000 |
| commit | 64e3d12f769d60eaee6d2e53a9b7f0b3814f32ed (patch) | |
| tree | 7038d1180a6a6bd19db14e92336c602686a3e7df /drivers/gpu/drm/i915/intel_ringbuffer.c | |
| parent | drm/i915: Don't oops during modeset shutdown after lpe audio deinit (diff) | |
| download | kernel-64e3d12f769d60eaee6d2e53a9b7f0b3814f32ed.tar.gz kernel-64e3d12f769d60eaee6d2e53a9b7f0b3814f32ed.zip | |
mm, drm/i915: mark pinned shmemfs pages as unevictable
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 <[email protected]>
Cc: Joonas Lahtinen <[email protected]>
Cc: Peter Zijlstra <[email protected]>
Cc: Andrew Morton <[email protected]>
Cc: Dave Hansen <[email protected]>
Signed-off-by: Kuo-Hsin Yang <[email protected]>
Acked-by: Michal Hocko <[email protected]> # mm part
Reviewed-by: Chris Wilson <[email protected]>
Acked-by: Dave Hansen <[email protected]>
Acked-by: Andrew Morton <[email protected]>
Link: https://patchwork.freedesktop.org/patch/msgid/[email protected]
Signed-off-by: Chris Wilson <[email protected]>
Diffstat (limited to 'drivers/gpu/drm/i915/intel_ringbuffer.c')
0 files changed, 0 insertions, 0 deletions
