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 <[email protected]>
> Cc: Joonas Lahtinen <[email protected]>
> Cc: Zhi Wang <[email protected]>
> ---
> 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
> [email protected]
> https://lists.freedesktop.org/mailman/listinfo/intel-gfx
--
Ville Syrjälä
Intel OTC
_______________________________________________
Intel-gfx mailing list
[email protected]
https://lists.freedesktop.org/mailman/listinfo/intel-gfx