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

From: Stephen Rothwell
Date: Mon Feb 05 2024 - 20:28:41 EST


Hi all,

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


Caused by commit

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

interacting with commit

dd08ebf6c352 ("drm/xe: Introduce a new DRM driver for Intel GPUs")

(and maybe others) from Linus' tree (v6.8-rc1).

I have applied the following merge fix patch for today. This makes it build,
but more is likely needed ...

From: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
Date: Tue, 6 Feb 2024 12:21:07 +1100
Subject: [PATCH] fix up for "drm/ttm: replace busy placement with flags v6"

interacting with commit

dd08ebf6c352 ("drm/xe: Introduce a new DRM driver for Intel GPUs")

Signed-off-by: Stephen Rothwell <sfr@xxxxxxxxxxxxxxxx>
---
drivers/gpu/drm/xe/xe_bo.c | 11 -----------
1 file changed, 11 deletions(-)

diff --git a/drivers/gpu/drm/xe/xe_bo.c b/drivers/gpu/drm/xe/xe_bo.c
index 0b0e262e2166..280dbda8ae5a 100644
--- a/drivers/gpu/drm/xe/xe_bo.c
+++ b/drivers/gpu/drm/xe/xe_bo.c
@@ -38,8 +38,6 @@ static const struct ttm_place sys_placement_flags = {
static struct ttm_placement sys_placement = {
.num_placement = 1,
.placement = &sys_placement_flags,
- .num_busy_placement = 1,
- .busy_placement = &sys_placement_flags,
};

static const struct ttm_place tt_placement_flags = {
@@ -52,8 +50,6 @@ static const struct ttm_place tt_placement_flags = {
static struct ttm_placement tt_placement = {
.num_placement = 1,
.placement = &tt_placement_flags,
- .num_busy_placement = 1,
- .busy_placement = &sys_placement_flags,
};

bool mem_type_is_vram(u32 mem_type)
@@ -230,8 +226,6 @@ static int __xe_bo_placement_for_flags(struct xe_device *xe, struct xe_bo *bo,
bo->placement = (struct ttm_placement) {
.num_placement = c,
.placement = bo->placements,
- .num_busy_placement = c,
- .busy_placement = bo->placements,
};

return 0;
@@ -251,7 +245,6 @@ static void xe_evict_flags(struct ttm_buffer_object *tbo,
/* Don't handle scatter gather BOs */
if (tbo->type == ttm_bo_type_sg) {
placement->num_placement = 0;
- placement->num_busy_placement = 0;
return;
}

@@ -1353,8 +1346,6 @@ static int __xe_bo_fixed_placement(struct xe_device *xe,
bo->placement = (struct ttm_placement) {
.num_placement = 1,
.placement = place,
- .num_busy_placement = 1,
- .busy_placement = place,
};

return 0;
@@ -2112,9 +2103,7 @@ int xe_bo_migrate(struct xe_bo *bo, u32 mem_type)

xe_place_from_ttm_type(mem_type, &requested);
placement.num_placement = 1;
- placement.num_busy_placement = 1;
placement.placement = &requested;
- placement.busy_placement = &requested;

/*
* Stolen needs to be handled like below VRAM handling if we ever need
--
2.43.0

--
Cheers,
Stephen Rothwell

Attachment: pgpmLxtwuKtYJ.pgp
Description: OpenPGP digital signature