Hi all, On Tue, 6 Feb 2024 12:28:22 +1100 Stephen Rothwell wrote: > > After merging the drm-misc tree, today's linux-next build (x86_64 > allmodconfig) failed like this: drivers/gpu/drm/xe/xe_bo.c:41:10: error: 'struct ttm_placement' has no member named 'num_busy_placement'; did you mean 'num_placement'? 41 | .num_busy_placement = 1, | ^~~~~~~~~~~~~~~~~~ | num_placement drivers/gpu/drm/xe/xe_bo.c:41:31: error: excess elements in struct initializer [-Werror] 41 | .num_busy_placement = 1, | ^ drivers/gpu/drm/xe/xe_bo.c:41:31: note: (near initialization for 'sys_placement') drivers/gpu/drm/xe/xe_bo.c:42:10: error: 'struct ttm_placement' has no member named 'busy_placement'; did you mean 'num_placement'? 42 | .busy_placement = &sys_placement_flags, | ^~~~~~~~~~~~~~ | num_placement drivers/gpu/drm/xe/xe_bo.c:42:27: error: excess elements in struct initializer [-Werror] 42 | .busy_placement = &sys_placement_flags, | ^ drivers/gpu/drm/xe/xe_bo.c:42:27: note: (near initialization for 'sys_placement') drivers/gpu/drm/xe/xe_bo.c:55:10: error: 'struct ttm_placement' has no member named 'num_busy_placement'; did you mean 'num_placement'? 55 | .num_busy_placement = 1, | ^~~~~~~~~~~~~~~~~~ | num_placement drivers/gpu/drm/xe/xe_bo.c:55:31: error: excess elements in struct initializer [-Werror] 55 | .num_busy_placement = 1, | ^ drivers/gpu/drm/xe/xe_bo.c:55:31: note: (near initialization for 'tt_placement') drivers/gpu/drm/xe/xe_bo.c:56:10: error: 'struct ttm_placement' has no member named 'busy_placement'; did you mean 'num_placement'? 56 | .busy_placement = &sys_placement_flags, | ^~~~~~~~~~~~~~ | num_placement drivers/gpu/drm/xe/xe_bo.c:56:27: error: excess elements in struct initializer [-Werror] 56 | .busy_placement = &sys_placement_flags, | ^ drivers/gpu/drm/xe/xe_bo.c:56:27: note: (near initialization for 'tt_placement') drivers/gpu/drm/xe/xe_bo.c: In function '__xe_bo_placement_for_flags': drivers/gpu/drm/xe/xe_bo.c:233:18: error: 'struct ttm_placement' has no member named 'num_busy_placement'; did you mean 'num_placement'? 233 | .num_busy_placement = c, | ^~~~~~~~~~~~~~~~~~ | num_placement drivers/gpu/drm/xe/xe_bo.c:233:39: error: excess elements in struct initializer [-Werror] 233 | .num_busy_placement = c, | ^ drivers/gpu/drm/xe/xe_bo.c:233:39: note: (near initialization for '(anonymous)') drivers/gpu/drm/xe/xe_bo.c:234:18: error: 'struct ttm_placement' has no member named 'busy_placement'; did you mean 'num_placement'? 234 | .busy_placement = bo->placements, | ^~~~~~~~~~~~~~ | num_placement drivers/gpu/drm/xe/xe_bo.c:234:35: error: excess elements in struct initializer [-Werror] 234 | .busy_placement = bo->placements, | ^~ drivers/gpu/drm/xe/xe_bo.c:234:35: note: (near initialization for '(anonymous)') drivers/gpu/drm/xe/xe_bo.c: In function 'xe_evict_flags': drivers/gpu/drm/xe/xe_bo.c:254:36: error: 'struct ttm_placement' has no member named 'num_busy_placement'; did you mean 'num_placement'? 254 | placement->num_busy_placement = 0; | ^~~~~~~~~~~~~~~~~~ | num_placement drivers/gpu/drm/xe/xe_bo.c: In function '__xe_bo_fixed_placement': drivers/gpu/drm/xe/xe_bo.c:1356:18: error: 'struct ttm_placement' has no member named 'num_busy_placement'; did you mean 'num_placement'? 1356 | .num_busy_placement = 1, | ^~~~~~~~~~~~~~~~~~ | num_placement drivers/gpu/drm/xe/xe_bo.c:1356:39: error: excess elements in struct initializer [-Werror] 1356 | .num_busy_placement = 1, | ^ drivers/gpu/drm/xe/xe_bo.c:1356:39: note: (near initialization for '(anonymous)') drivers/gpu/drm/xe/xe_bo.c:1357:18: error: 'struct ttm_placement' has no member named 'busy_placement'; did you mean 'num_placement'? 1357 | .busy_placement = place, | ^~~~~~~~~~~~~~ | num_placement drivers/gpu/drm/xe/xe_bo.c:1357:35: error: excess elements in struct initializer [-Werror] 1357 | .busy_placement = place, | ^~~~~ drivers/gpu/drm/xe/xe_bo.c:1357:35: note: (near initialization for '(anonymous)') drivers/gpu/drm/xe/xe_bo.c: In function 'xe_bo_migrate': drivers/gpu/drm/xe/xe_bo.c:2115:19: error: 'struct ttm_placement' has no member named 'num_busy_placement'; did you mean 'num_placement'? 2115 | placement.num_busy_placement = 1; | ^~~~~~~~~~~~~~~~~~ | num_placement drivers/gpu/drm/xe/xe_bo.c:2117:19: error: 'struct ttm_placement' has no member named 'busy_placement'; did you mean 'num_placement'? 2117 | placement.busy_placement = &requested; | ^~~~~~~~~~~~~~ | num_placement > 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). Given that the latter above commit(s) are also in the drm-misc tree, I have just used the drm-misc tree from next-20240205 for today. -- Cheers, Stephen Rothwell