summaryrefslogtreecommitdiff
path: root/tools/perf/scripts/python/task-analyzer.py
diff options
context:
space:
mode:
authorKuo-Hsin Yang <vovoy@chromium.org>2019-01-08 15:45:17 +0800
committerChris Wilson <chris@chris-wilson.co.uk>2019-01-09 21:24:50 +0000
commitfb4b49278f6b2b83bc638d4082301f98581c3598 (patch)
treed881b7b24a387bc29b4eb36bab1e4a24c9331616 /tools/perf/scripts/python/task-analyzer.py
parent2513147dce2353eb6d1a947ab543e3758724362d (diff)
downloadkernel-fb4b49278f6b2b83bc638d4082301f98581c3598.tar.gz
drm/gem: Mark pinned pages as unevictable
The gem drivers use shmemfs to allocate backing storage for gem objects. On Samsung Chromebook Plus, the drm/rockchip driver may call rockchip_gem_get_pages -> drm_gem_get_pages -> shmem_read_mapping_page to pin a lot of pages, breaking the page reclaim mechanism and causing oom-killer invocation. E.g. when the size of a zone is 3.9 GiB, the inactive_ratio is 5. If active_anon / inactive_anon < 5 and all pages in the inactive_anon lru are pinned, page reclaim would keep scanning inactive_anon lru without reclaiming memory. It breaks page reclaim when the rockchip driver only pins about 1/6 of the anon lru pages. Mark these pinned pages as unevictable to avoid the premature oom-killer invocation. See also similar patch on i915 driver [1]. [1]: https://patchwork.freedesktop.org/patch/msgid/20181106132324.17390-1-chris@chris-wilson.co.uk Signed-off-by: Kuo-Hsin Yang <vovoy@chromium.org> Cc: Daniel Vetter <daniel@ffwll.ch> Cc: Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by: Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk> Link: https://patchwork.freedesktop.org/patch/msgid/20190108074517.209860-1-vovoy@chromium.org
Diffstat (limited to 'tools/perf/scripts/python/task-analyzer.py')
0 files changed, 0 insertions, 0 deletions
cel/habanalabs/common?id=ce6c4580334a45f3840834c880f395003f5bbc93'>accel/habanalabs: Switch to use %ptTsAndy Shevchenko 2025-05-02x86/msr: Add explicit includes of <asm/msr.h>Xin Li (Intel) 2025-04-01Merge tag 'driver-core-6.15-rc1' of git://git.kernel.org/pub/scm/linux/kernel...Linus Torvalds 2025-03-16accel/habanalabs: convert timeouts to secs_to_jiffies()Easwar Hariharan 2025-02-21accel/habanalabs: constify 'struct bin_attribute'Thomas Weißschuh 2025-01-26Merge tag 'mm-nonmm-stable-2025-01-24-23-16' of git://git.kernel.org/pub/scm/...Linus Torvalds 2025-01-12drivers: remove get_task_comm() and print task comm directlyYafang Shao 2025-01-12accel/habanalabs: convert timeouts to secs_to_jiffies()Easwar Hariharan 2024-12-13Merge tag 'drm-misc-next-2024-12-05' of https://gitlab.freedesktop.org/drm/mi...Dave Airlie 2024-12-05drm: remove driver date from struct drm_driver and all driversJani Nikula 2024-12-02module: Convert symbol namespace to string literalPeter Zijlstra 2024-06-23accel/habanalabs: gradual sleep in polling memory macroDidi Freiman 2024-06-23accel/habanalabs: move heartbeat work initialization to early initTomer Tayar 2024-06-23accel/habanalabs: print timestamp of last PQ heartbeat on EQ heartbeat failureTomer Tayar 2024-06-23accel/habanalabs: dump the EQ entries headers on EQ heartbeat failureTomer Tayar 2024-06-23accel/habanalabs: revise print on EQ heartbeat failureTomer Tayar 2024-06-23accel/habanalabs: add more info upon cpu pkt timeoutFarah Kassabri 2024-06-23accel/habanalabs: additional print in device-in-use infoIlia Levi 2024-06-23accel/habanalabs: disable EQ interrupt after disabling pciTal Cohen 2024-06-23accel/habanalabs: change the heartbeat scheduling pointFarah Kassabri 2024-06-23accel/habanalabs: remove timestamp registration debug printsOfir Bitton 2024-06-23accel/habanalabs: add cpld ts cpld_timestamp cpucpVitaly Margolin 2024-06-23accel/habanalabs: add a common handler for clock change eventsTomer Tayar 2024-06-23accel/habanalabs/gaudi2: add GAUDI2D revision supportFarah Kassabri 2024-06-23accel/habanalabs: move hl_eq_heartbeat_event_handle() to common codeTomer Tayar 2024-06-23accel/habanalabs: add an EQ size ASIC propertyTomer Tayar 2024-06-23accel/habanalabs: check for errors after preboot is readyFarah Kassabri 2024-06-23accel/habanalabs: use msg_header instead of desc_headerIgal Zeltser 2024-06-23accel/habanalabs: add heartbeat debug infoFarah Kassabri 2024-06-23accel/habanalabs: add device name to invalidation failure msgOhad Sharabi 2024-06-23accel/habanalabs: expose server type in debugfsTal Risin 2024-06-23accel/habanalabs: use parent device for trace eventsTomer Tayar