Engine related definitions are located in different files and it is easy to break their cross dependency.
Additionally use GEM_WARN_ON to catch invalid engine index. v2: compare against array size Signed-off-by: Michal Wajdeczko <michal.wajdec...@intel.com> Cc: Jani Nikula <jani.nik...@intel.com> Cc: Joonas Lahtinen <joonas.lahti...@linux.intel.com> Cc: Chris Wilson <ch...@chris-wilson.co.uk> Cc: Tvrtko Ursulin <tvrtko.ursu...@intel.com> --- drivers/gpu/drm/i915/intel_engine_cs.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/drivers/gpu/drm/i915/intel_engine_cs.c b/drivers/gpu/drm/i915/intel_engine_cs.c index a238304..c1f58b5 100644 --- a/drivers/gpu/drm/i915/intel_engine_cs.c +++ b/drivers/gpu/drm/i915/intel_engine_cs.c @@ -84,11 +84,16 @@ static const struct engine_info { static int intel_engine_setup(struct drm_i915_private *dev_priv, - enum intel_engine_id id) + unsigned int id) { const struct engine_info *info = &intel_engines[id]; struct intel_engine_cs *engine; + BUILD_BUG_ON(ARRAY_SIZE(intel_engines) != + ARRAY_SIZE(dev_priv->engine)); + if (GEM_WARN_ON(id >= ARRAY_SIZE(intel_engines))) + return -EINVAL; + GEM_BUG_ON(dev_priv->engine[id]); engine = kzalloc(sizeof(*engine), GFP_KERNEL); if (!engine) -- 2.7.4 _______________________________________________ Intel-gfx mailing list Intel-gfx@lists.freedesktop.org https://lists.freedesktop.org/mailman/listinfo/intel-gfx