From: Chris Wilson Date: Mon, 6 Nov 2017 11:48:33 +0000 (+0000) Subject: drm/i915/guc: Assert guc->stage_desc_pool is allocated X-Git-Tag: v4.19~298^2~46^2~1194 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=856efd21c6f7139a74d340cdb6e0de5d8e226134;p=platform%2Fkernel%2Flinux-rpi.git drm/i915/guc: Assert guc->stage_desc_pool is allocated Silence smatch by demonstrating that guc->stage_desc_pool is allocated following a successful guc_stage_desc_pool_create(), drivers/gpu/drm/i915/i915_guc_submission.c:1293 i915_guc_submission_init() error: we previously assumed 'guc->stage_desc_pool' could be null (see line 1261) Signed-off-by: Chris Wilson Cc: Oscar Mateo Cc: Daniele Ceraolo Spurio Cc: Joonas Lahtinen Link: https://patchwork.freedesktop.org/patch/msgid/20171106114833.31199-1-chris@chris-wilson.co.uk Reviewed-by: Michal Wajdeczko --- diff --git a/drivers/gpu/drm/i915/i915_guc_submission.c b/drivers/gpu/drm/i915/i915_guc_submission.c index d14c134..0ba2fc0 100644 --- a/drivers/gpu/drm/i915/i915_guc_submission.c +++ b/drivers/gpu/drm/i915/i915_guc_submission.c @@ -1264,10 +1264,16 @@ int i915_guc_submission_init(struct drm_i915_private *dev_priv) ret = guc_stage_desc_pool_create(guc); if (ret) return ret; + /* + * Keep static analysers happy, let them know that we allocated the + * vma after testing that it didn't exist earlier. + */ + GEM_BUG_ON(!guc->stage_desc_pool); ret = guc_shared_data_create(guc); if (ret) goto err_stage_desc_pool; + GEM_BUG_ON(!guc->shared_data); ret = intel_guc_log_create(guc); if (ret < 0) @@ -1276,10 +1282,12 @@ int i915_guc_submission_init(struct drm_i915_private *dev_priv) ret = guc_preempt_work_create(guc); if (ret) goto err_log; + GEM_BUG_ON(!guc->preempt_wq); ret = guc_ads_create(guc); if (ret < 0) goto err_wq; + GEM_BUG_ON(!guc->ads_vma); return 0;