Subject: linux-next: build failure after merge of the drm-misc tree

From: Stephen Rothwell <[email-masked]>
Date: Tue, 6 Feb 2024 15:28:50 +1100

Hi all,

After merging the drm-misc tree, today's linux-next build (i386 defconfig)
failed like this:

In function 'i915_ttm_placement_from_obj',
    inlined from 'i915_ttm_get_pages' at drivers/gpu/drm/i915/gem/i915_gem_ttm.c:847:2:
drivers/gpu/drm/i915/gem/i915_gem_ttm.c:165:18: error: 'places[0].flags' is used uninitialized [-Werror=uninitialized]
  165 |         places[0].flags |= TTM_PL_FLAG_DESIRED;
      |         ~~~~~~~~~^~~~~~
drivers/gpu/drm/i915/gem/i915_gem_ttm.c: In function 'i915_ttm_get_pages':
drivers/gpu/drm/i915/gem/i915_gem_ttm.c:837:26: note: 'places' declared here
  837 |         struct ttm_place places[I915_TTM_MAX_PLACEMENTS + 1];
      |                          ^~~~~~

Caused by commit

  a78a8da51b36 ("drm/ttm: replace busy placement with flags v6")

I applied the following hack for today:

From: Stephen Rothwell <[email-masked]>
Date: Tue, 6 Feb 2024 15:17:54 +1100
Subject: [PATCH] drm/ttm: initialise places

Signed-off-by: Stephen Rothwell <[email-masked]>
---
 drivers/gpu/drm/i915/gem/i915_gem_ttm.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/gpu/drm/i915/gem/i915_gem_ttm.c b/drivers/gpu/drm/i915/gem/i915_gem_ttm.c
index 80c6cafc8887..34e699e67c25 100644
--- a/drivers/gpu/drm/i915/gem/i915_gem_ttm.c
+++ b/drivers/gpu/drm/i915/gem/i915_gem_ttm.c
@@ -834,7 +834,7 @@ static int __i915_ttm_get_pages(struct drm_i915_gem_object *obj,
 
 static int i915_ttm_get_pages(struct drm_i915_gem_object *obj)
 {
-	struct ttm_place places[I915_TTM_MAX_PLACEMENTS + 1];
+	struct ttm_place places[I915_TTM_MAX_PLACEMENTS + 1] = {};
 	struct ttm_placement placement;
 
 	/* restricted by sg_alloc_table */
-- 
2.43.0

-- 
Cheers,
Stephen Rothwell