• Mika Kuoppala's avatar
    drm/i915: Avoid tweaking evaluation thresholds on Baytrail v3 · cb0a2cba
    Mika Kuoppala authored
    commit 34dc8993 upstream.
    
    Certain Baytrails, namely the 4 cpu core variants, have been
    plaqued by spurious system hangs, mostly occurring with light loads.
    
    Multiple bisects by various people point to a commit which changes the
    reclocking strategy for Baytrail to follow its bigger brethen:
    commit 8fb55197 ("drm/i915: Agressive downclocking on Baytrail")
    
    There is also a review comment attached to this commit from Deepak S
    on avoiding punit access on Cherryview and thus it was excluded on
    common reclocking path. By taking the same approach and omitting
    the punit access by not tweaking the thresholds when the hardware
    has been asked to move into different frequency, considerable gains
    in stability have been observed.
    
    With J1900 box, light render/video load would end up in system hang
    in usually less than 12 hours. With this patch applied, the cumulative
    uptime has now been 34 days without issues. To provoke system hang,
    light loads on both render and bsd engines in parallel have been used:
    glxgears >/dev/null 2>/dev/null &
    mpv --vo=vaapi --hwdec=vaapi --loop=inf vid.mp4
    
    So far, author has not witnessed system hang with above load
    and this patch applied. Reports from the tenacious people at
    kernel bugzilla are also promising.
    
    Considering that the punit access frequency with this patch is
    considerably less, there is a possibility that this will push
    the, still unknown, root cause past the triggering point on most loads.
    
    But as we now can reliably reproduce the hang independently,
    we can reduce the pain that users are having and use a
    static thresholds until a root cause is found.
    
    v3: don't break debugfs and simplification (Chris Wilson)
    
    References: https://bugzilla.kernel.org/show_bug.cgi?id=109051
    Cc: Chris Wilson <chris@chris-wilson.co.uk>
    Cc: Ville Syrjälä <ville.syrjala@linux.intel.com>
    Cc: Len Brown <len.brown@intel.com>
    Cc: Daniel Vetter <daniel.vetter@ffwll.ch>
    Cc: Jani Nikula <jani.nikula@intel.com>
    Cc: fritsch@xbmc.org
    Cc: miku@iki.fi
    Cc: Ezequiel Garcia <ezequiel@vanguardiasur.com.ar>
    CC: Michal Feix <michal@feix.cz>
    Cc: Hans de Goede <hdegoede@redhat.com>
    Cc: Deepak S <deepak.s@linux.intel.com>
    Cc: Jarkko Nikula <jarkko.nikula@linux.intel.com>
    Acked-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    Acked-by: default avatarChris Wilson <chris@chris-wilson.co.uk>
    Signed-off-by: default avatarMika Kuoppala <mika.kuoppala@intel.com>
    Link: http://patchwork.freedesktop.org/patch/msgid/1487166779-26945-1-git-send-email-mika.kuoppala@intel.com
    (cherry picked from commit 6067a27d)
    Signed-off-by: default avatarJani Nikula <jani.nikula@intel.com>
    Signed-off-by: default avatarGreg Kroah-Hartman <gregkh@linuxfoundation.org>
    cb0a2cba
intel_pm.c 207 KB