drm/i915/guc: Take engine PM when a context is pinned with GuC submission
Taking a PM reference to prevent intel_gt_wait_for_idle from short circuiting while any user context has scheduling enabled. Returning GT idle when it is not can cause all sorts of issues throughout the stack. v2: (Daniel Vetter) - Add might_lock annotations to pin / unpin function v3: (CI) - Drop intel_engine_pm_might_put from unpin path as an async put is used v4: (John Harrison) - Make intel_engine_pm_might_get/put work with GuC virtual engines - Update commit message v5: - Update commit message again Signed-off-by:Matthew Brost <matthew.brost@intel.com> Reviewed-by:
John Harrison <John.C.Harrison@Intel.com> Signed-off-by:
John Harrison <John.C.Harrison@Intel.com> Link: https://patchwork.freedesktop.org/patch/msgid/20211014172005.27155-4-matthew.brost@intel.com
Showing
- drivers/gpu/drm/i915/gt/intel_context.c 2 additions, 0 deletionsdrivers/gpu/drm/i915/gt/intel_context.c
- drivers/gpu/drm/i915/gt/intel_engine_pm.h 32 additions, 0 deletionsdrivers/gpu/drm/i915/gt/intel_engine_pm.h
- drivers/gpu/drm/i915/gt/intel_gt_pm.h 10 additions, 0 deletionsdrivers/gpu/drm/i915/gt/intel_gt_pm.h
- drivers/gpu/drm/i915/gt/uc/intel_guc_submission.c 33 additions, 3 deletionsdrivers/gpu/drm/i915/gt/uc/intel_guc_submission.c
- drivers/gpu/drm/i915/intel_wakeref.h 12 additions, 0 deletionsdrivers/gpu/drm/i915/intel_wakeref.h
Loading
Please register or sign in to comment