• Chris Wilson's avatar
    drm/i915: Avoid GPU stalls from kswapd · 5763ff04
    Chris Wilson authored
    Exclude active GPU pages from the purview of the background shrinker
    (kswapd), as these cause uncontrollable GPU stalls. Given that the
    shrinker is rerun until the freelists are satisfied, we should have
    opportunity in subsequent passes to recover the pages once idle. If the
    machine does run out of memory entirely, we have the forced idling in the
    oom-notifier as a means of releasing all the pages we can before an oom
    is prematurely executed.
    
    Note that this relies upon an up-front retire_requests to keep the
    inactive list in shape, which was added in a previous patch, mostly as
    execlist ctx pinning band-aids.
    Signed-off-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
    Reviewed-by: default avatarDamien Lespiau <damien.lespiau@intel.com>
    [danvet: Add note about retire_requests.]
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    5763ff04
i915_gem_shrinker.c 10.3 KB