• Imre Deak's avatar
    drm/i915: fix rps.vlv_work initialization · 671952a2
    Imre Deak authored
    During driver loading we are initializing rps.vlv_work in
    valleyview_enable_rps() via the rps.delayed_resume_work delayed work.
    This is too late since we are using vlv_work already via
    i915_driver_load()->intel_uncore_sanitize()->
    intel_disable_gt_powersave(). This at least leads to the following
    kernel warning:
    
     INFO: trying to register non-static key.
     the code is fine but needs lockdep annotation.
     turning off the locking correctness validator.
    
    Fix this by initialzing vlv_work before we call intel_uncore_sanitize().
    
    The regression was introduced in
    
    commit 7dcd2677
    Author: Konstantin Khlebnikov <khlebnikov@openvz.org>
    Date:   Wed Jul 17 10:22:58 2013 +0400
    
        drm/i915: fix long-standing SNB regression in power consumption
        after resume
    
    though there was no good reason to initialize the static vlv_work from
    another delayed work to begin with (especially since this will happen
    multiple times).
    
    Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=69397Tested-by: default avatarshui yangwei <yangweix.shui@intel.com>
    Signed-off-by: default avatarImre Deak <imre.deak@intel.com>
    Cc: stable@vger.kernel.org
    Signed-off-by: default avatarDaniel Vetter <daniel.vetter@ffwll.ch>
    671952a2
intel_pm.c 157 KB