[Intel-gfx] [PATCH 1/3] drm/i915: Initialise entry in intel_ppat_get() for older compilers

Ville Syrjälä ville.syrjala at linux.intel.com
Wed Nov 15 12:50:50 UTC 2017


On Wed, Nov 15, 2017 at 10:50:34AM +0000, Chris Wilson wrote:
> gcc-4.7.3 is confused by the guards inside intel_ppat_get() and reports:
> 
> drivers/gpu/drm/i915/i915_gem_gtt.c: In function ‘intel_ppat_get’:
> drivers/gpu/drm/i915/i915_gem_gtt.c:3044:27: warning: ‘entry’ may be used uninitialized in this function [-Wmaybe-uninitialized]
> 
> Forgive the compiler this once, and rearrange the code so that entry is
> always initialised.
> 
> Signed-off-by: Chris Wilson <chris at chris-wilson.co.uk>
> Cc: Joonas Lahtinen <joonas.lahtinen at linux.intel.com>
> Cc: Zhi Wang <zhi.a.wang at intel.com>
> ---
>  drivers/gpu/drm/i915/i915_gem_gtt.c | 8 +++-----
>  1 file changed, 3 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/i915/i915_gem_gtt.c b/drivers/gpu/drm/i915/i915_gem_gtt.c
> index 3c3a699436c9..10e3c6e64d9e 100644
> --- a/drivers/gpu/drm/i915/i915_gem_gtt.c
> +++ b/drivers/gpu/drm/i915/i915_gem_gtt.c
> @@ -3076,7 +3076,7 @@ const struct intel_ppat_entry *
>  intel_ppat_get(struct drm_i915_private *i915, u8 value)
>  {
>  	struct intel_ppat *ppat = &i915->ppat;
> -	struct intel_ppat_entry *entry;
> +	struct intel_ppat_entry *entry = ERR_PTR(-ENOSPC);

Or maybe?

struct intel_ppat_entry *entry = NULL;

>  	unsigned int scanned, best_score;
>  	int i;
>  
> @@ -3099,10 +3099,8 @@ intel_ppat_get(struct drm_i915_private *i915, u8 value)
>  	}
>  
>  	if (scanned == ppat->max_entries) {
> -		if (!best_score)

if (!entry)

> -			return ERR_PTR(-ENOSPC);
> -
> -		kref_get(&entry->ref);
> +		if (best_score)
> +			kref_get(&entry->ref);
>  		return entry;
>  	}
>  
> -- 
> 2.15.0
> 
> _______________________________________________
> Intel-gfx mailing list
> Intel-gfx at lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx

-- 
Ville Syrjälä
Intel OTC


More information about the Intel-gfx mailing list