[0/5] Simplify GuC communication handling
mbox series

Message ID 20191210210919.30846-1-daniele.ceraolospurio@intel.com
Headers show
Series
  • Simplify GuC communication handling
Related show

Message

Daniele Ceraolo Spurio Dec. 10, 2019, 9:09 p.m. UTC
Since H2G communication will be in the hot path of GuC submission,
the main aim of this series is to get rid of the function pointers to
speed things up and avoid retpolines (in case the compiler decides
they're required). While at it, simplify the general communication
enabling/disabling by removing support for multiple channels since
it is extremely unlikely that we'll ever use more than one.

Cc: Michal Wajdeczko <michal.wajdeczko@intel.com>
Cc: John Harrison <John.C.Harrison@Intel.com>
Cc: Matthew Brost <matthew.brost@intel.com>

Daniele Ceraolo Spurio (5):
  drm/i915/guc: Merge communication_stop and communication_disable
  drm/i915/guc/ct: stop expecting multiple CT channels
  drm/i915/guc: remove function pointers for send/receive calls
  drm/i915/guc: unify notify() functions
  HAX: force enable_guc=2 and WA i915#571

 drivers/gpu/drm/i915/gt/intel_gt_irq.c        |   2 +-
 drivers/gpu/drm/i915/gt/selftest_gt_pm.c      |   9 +
 drivers/gpu/drm/i915/gt/uc/intel_guc.c        |  43 +--
 drivers/gpu/drm/i915/gt/uc/intel_guc.h        |  41 +--
 drivers/gpu/drm/i915/gt/uc/intel_guc_ct.c     | 298 +++++++-----------
 drivers/gpu/drm/i915/gt/uc/intel_guc_ct.h     |  55 ++--
 drivers/gpu/drm/i915/gt/uc/intel_guc_log.c    |   6 +-
 .../gpu/drm/i915/gt/uc/intel_guc_submission.c |   1 -
 drivers/gpu/drm/i915/gt/uc/intel_uc.c         |  36 +--
 drivers/gpu/drm/i915/i915_params.h            |   2 +-
 10 files changed, 186 insertions(+), 307 deletions(-)

Comments

Chris Wilson Dec. 11, 2019, 11:52 a.m. UTC | #1
Quoting Patchwork (2019-12-11 11:33:35)
> #### Possible regressions ####
> 
>   * igt@gem_exec_parallel@rcs0-contexts:
>     - shard-iclb:         [PASS][1] -> [CRASH][2]
>    [1]: https://intel-gfx-ci.01.org/tree/drm-tip/CI_DRM_7534/shard-iclb4/igt@gem_exec_parallel@rcs0-contexts.html
>    [2]: https://intel-gfx-ci.01.org/tree/drm-tip/Patchwork_15681/shard-iclb7/igt@gem_exec_parallel@rcs0-contexts.html

Where did __gem_execbuf() == -25 [ENOTTY] come from?
-Chris