linux-next: build failure after merge of the drm-misc tree
Mark Brown
maintainerHi all,
After merging the drm-misc tree, today's linux-next build (x86_64 allmodconfig) failed like this:
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:43:48:
error: 'struct drm_atomic_state' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
43 | struct drm_atomic_state *state)
| ^~~~~~~~~~~~~~~~
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
In function 'vs_cursor_plane_atomic_check':/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:45:82:
error: passing argument 1 of 'drm_atomic_get_new_plane_state' from incompatible pointer type [-Wincompatible-pointer-types]
45 | struct drm_plane_state *new_plane_state = drm_atomic_get_new_plane_state(state,
| ^~~~~
| |
| struct
| drm_atomic_state
| *In file included from /tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:12:/tmp/next/build/include/drm/drm_atomic.h:824:64: note: expected 'const struct drm_atomic_commit *' but argument is of type 'struct drm_atomic_state *'
824 | drm_atomic_get_new_plane_state(const struct drm_atomic_commit *state,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:55:60:
error: passing argument 1 of 'drm_atomic_get_new_crtc_state' from
incompatible pointer type [-Wincompatible-pointer-types]
55 | crtc_state = drm_atomic_get_new_crtc_state(state, crtc);
| ^~~~~
| | struct
| drm_atomic_state
| */tmp/next/build/include/drm/drm_atomic.h:794:63: note: expected 'const struct drm_atomic_commit *' but argument is of type 'struct drm_atomic_state *'
794 | drm_atomic_get_new_crtc_state(const struct drm_atomic_commit *state,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
At top level:/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:101:51:
error: 'struct drm_atomic_state' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
101 | struct drm_atomic_state *atomic_state)
| ^~~~~~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
In function 'vs_cursor_plane_atomic_enable':/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:103:72:
error: passing argument 1 of 'drm_atomic_get_new_plane_state' from incompatible pointer type [-Wincompatible-pointer-types]
103 | struct drm_plane_state *state = drm_atomic_get_new_plane_state(atomic_state,
| ^~~~~~~~~~~~
| |
| struct
| drm_atomic_state
| */tmp/next/build/include/drm/drm_atomic.h:824:64: note: expected 'const struct drm_atomic_commit *' but argument is of type 'struct drm_atomic_state *'
824 | drm_atomic_get_new_plane_state(const struct drm_atomic_commit *state,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
At top level:/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:118:52:
error: 'struct drm_atomic_state' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
118 | struct drm_atomic_state *atomic_state)
| ^~~~~~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
In function 'vs_cursor_plane_atomic_disable':/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:120:72:
error: passing argument 1 of 'drm_atomic_get_old_plane_state' from incompatible pointer type [-Wincompatible-pointer-types]
120 | struct drm_plane_state *state = drm_atomic_get_old_plane_state(atomic_state,
| ^~~~~~~~~~~~
| |
| struct
| drm_atomic_state
| */tmp/next/build/include/drm/drm_atomic.h:809:64: note: expected 'const struct drm_atomic_commit *' but argument is of type 'struct drm_atomic_state *'
809 | drm_atomic_get_old_plane_state(const struct drm_atomic_commit *state,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
At top level:/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:135:51:
error: 'struct drm_atomic_state' declared inside parameter list will not be visible outside of this definition or declaration [-Werror]
135 | struct drm_atomic_state *atomic_state)
| ^~~~~~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
In function 'vs_cursor_plane_atomic_update':/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:137:72:
error: passing argument 1 of 'drm_atomic_get_new_plane_state' from incompatible pointer type [-Wincompatible-pointer-types]
137 | struct drm_plane_state *state = drm_atomic_get_new_plane_state(atomic_state,
| ^~~~~~~~~~~~
| |
| struct
| drm_atomic_state
| */tmp/next/build/include/drm/drm_atomic.h:824:64: note: expected 'const struct drm_atomic_commit *' but argument is of type 'struct drm_atomic_state *'
824 | drm_atomic_get_new_plane_state(const struct drm_atomic_commit *state,
| ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:147:55:
error: passing argument 2 of 'vs_cursor_plane_atomic_disable' from
incompatible pointer type [-Wincompatible-pointer-types]
147 | vs_cursor_plane_atomic_disable(plane, atomic_state);
| ^~~~~~~~~~~~
| | struct
| drm_atomic_state
| *
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:118:70:
note: expected 'struct drm_atomic_state *' but argument is of type
'struct drm_atomic_state *'
118 | struct drm_atomic_state *atomic_state)
| ~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
At top level:/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:225:27:
error: initialization of 'int (*)(struct drm_plane *, struct drm_atomic_commit *)' from incompatible pointer type 'int (*)(struct drm_plane *, struct drm_atomic_state *)' [-Wincompatible-pointer-types]
225 | .atomic_check = vs_cursor_plane_atomic_check,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:225:27:
note: (near initialization for 'vs_cursor_plane_helper_funcs.atomic_check') /tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:226:27:
error: initialization of 'void (*)(struct drm_plane *, struct drm_atomic_commit *)' from incompatible pointer type 'void (*)(struct drm_plane *, struct drm_atomic_state *)' [-Wincompatible-pointer-types]
226 | .atomic_update = vs_cursor_plane_atomic_update,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:226:27:
note: (near initialization for 'vs_cursor_plane_helper_funcs.atomic_update') /tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:227:27:
error: initialization of 'void (*)(struct drm_plane *, struct drm_atomic_commit *)' from incompatible pointer type 'void (*)(struct drm_plane *, struct drm_atomic_state *)' [-Wincompatible-pointer-types]
227 | .atomic_enable = vs_cursor_plane_atomic_enable,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:227:27:
note: (near initialization for 'vs_cursor_plane_helper_funcs.atomic_enable') /tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:228:27:
error: initialization of 'void (*)(struct drm_plane *, struct drm_atomic_commit *)' from incompatible pointer type 'void (*)(struct drm_plane *, struct drm_atomic_state *)' [-Wincompatible-pointer-types]
228 | .atomic_disable = vs_cursor_plane_atomic_disable,
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:228:27:
note: (near initialization for 'vs_cursor_plane_helper_funcs.atomic_disable')
Caused by commit
8c4ae21891255 (drm: verisilicon: add support for cursor planes)
interacting with
5164f7e7ff8ec (drm: Rename struct drm_atomic_state to drm_atomic_commit)
which appears to be an ancestor of the verisilicon commit. I have used the version from next-20260522 instead.
Quoted 10 lines · 在 2026-05-25一的 16:02 +0100,Mark Brown写道:
Hi all,
After merging the drm-misc tree, today's linux-next build (
x86_64allmodconfig) failed like this:
/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:43:48:
error: 'structdrm_atomic_state' declared inside parameter list will not be visible outside of this definition or declaration [-Werror] 43 | structdrm_atomic_state*state)
Oops, I put the patch for too long time that the behavior changed.
I'm going to fix this.
Thanks,
Icenowy
Quoted 240 lines
|
^~~~~~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
In function 'vs_cursor_plane_atomic_check':/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:45:82:
error: passing argument 1 of 'drm_atomic_get_new_plane_state' from incompatible pointer type [-Wincompatible-pointer-types] 45 | structdrm_plane_state*new_plane_state= drm_atomic_get_new_plane_state(state,
|
^~~~~
|
|
|
struct
|
drm_atomic_state
|
*
In file included from/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:12:/tmp/next/build/include/drm/drm_atomic.h:824:64: note: expected 'const structdrm_atomic_commit*' but argument is of type 'structdrm_atomic_state*'
824 | drm_atomic_get_new_plane_state(const structdrm_atomic_commit*state,
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:55:60:
error: passing argument 1 of 'drm_atomic_get_new_crtc_state' from incompatible pointer type [-Wincompatible-pointer-types] 55 |crtc_state=drm_atomic_get_new_crtc_state(state, crtc);
|
^~~~~
| | struct
|drm_atomic_state
| */tmp/next/build/include/drm/drm_atomic.h:794:63: note: expected 'const structdrm_atomic_commit*' but argument is of type 'structdrm_atomic_state*'
794 | drm_atomic_get_new_crtc_state(const structdrm_atomic_commit*state,
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
At top level:/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:101:51:
error: 'structdrm_atomic_state' declared inside parameter list will not be visible outside of this definition or declaration [-Werror] 101 | structdrm_atomic_state*atomic_state)
|
^~~~~~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
In function 'vs_cursor_plane_atomic_enable':/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:103:72:
error: passing argument 1 of 'drm_atomic_get_new_plane_state' from incompatible pointer type [-Wincompatible-pointer-types] 103 | structdrm_plane_state*state = drm_atomic_get_new_plane_state(atomic_state,
|
^~~~~~~~~~~~
|
|
|
struct
|
drm_atomic_state
|
*/tmp/next/build/include/drm/drm_atomic.h:824:64: note: expected 'const structdrm_atomic_commit*' but argument is of type 'structdrm_atomic_state*'
824 | drm_atomic_get_new_plane_state(const structdrm_atomic_commit*state,
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
At top level:/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:118:52:
error: 'structdrm_atomic_state' declared inside parameter list will not be visible outside of this definition or declaration [-Werror] 118 | structdrm_atomic_state*atomic_state)
|
^~~~~~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
In function 'vs_cursor_plane_atomic_disable':/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:120:72:
error: passing argument 1 of 'drm_atomic_get_old_plane_state' from incompatible pointer type [-Wincompatible-pointer-types] 120 | structdrm_plane_state*state = drm_atomic_get_old_plane_state(atomic_state,
|
^~~~~~~~~~~~
|
|
|
struct
|
drm_atomic_state
|
*/tmp/next/build/include/drm/drm_atomic.h:809:64: note: expected 'const structdrm_atomic_commit*' but argument is of type 'structdrm_atomic_state*'
809 | drm_atomic_get_old_plane_state(const structdrm_atomic_commit*state,
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
At top level:/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:135:51:
error: 'structdrm_atomic_state' declared inside parameter list will not be visible outside of this definition or declaration [-Werror] 135 | structdrm_atomic_state*atomic_state)
|
^~~~~~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
In function 'vs_cursor_plane_atomic_update':/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:137:72:
error: passing argument 1 of 'drm_atomic_get_new_plane_state' from incompatible pointer type [-Wincompatible-pointer-types] 137 | structdrm_plane_state*state = drm_atomic_get_new_plane_state(atomic_state,
|
^~~~~~~~~~~~
|
|
|
struct
|
drm_atomic_state
|
*/tmp/next/build/include/drm/drm_atomic.h:824:64: note: expected 'const structdrm_atomic_commit*' but argument is of type 'structdrm_atomic_state*'
824 | drm_atomic_get_new_plane_state(const structdrm_atomic_commit*state,
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:147:55:
error: passing argument 2 of 'vs_cursor_plane_atomic_disable' from incompatible pointer type [-Wincompatible-pointer-types] 147 |vs_cursor_plane_atomic_disable(plane, atomic_state);
|
^~~~~~~~~~~~
| | struct
|drm_atomic_state
| */tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:118:70:
note: expected 'structdrm_atomic_state*' but argument is of type 'structdrm_atomic_state*'
118 | structdrm_atomic_state*atomic_state)
|
~~~~~~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:
At top level:/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:225:27:
error: initialization of 'int (*)(structdrm_plane*, structdrm_atomic_commit*)' from incompatible pointer type 'int (*)(structdrm_plane*, structdrm_atomic_state*)' [-Wincompatible-pointer- types]
225 | .atomic_check =vs_cursor_plane_atomic_check, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:225:27:
note: (near initialization for 'vs_cursor_plane_helper_funcs.atomic_check')/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:226:27:
error: initialization of 'void (*)(structdrm_plane*, structdrm_atomic_commit*)' from incompatible pointer type 'void (*)(structdrm_plane*, structdrm_atomic_state*)' [-Wincompatible-pointer- types]
226 | .atomic_update =vs_cursor_plane_atomic_update, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:226:27:
note: (near initialization for 'vs_cursor_plane_helper_funcs.atomic_update')/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:227:27:
error: initialization of 'void (*)(structdrm_plane*, structdrm_atomic_commit*)' from incompatible pointer type 'void (*)(structdrm_plane*, structdrm_atomic_state*)' [-Wincompatible-pointer- types]
227 | .atomic_enable =vs_cursor_plane_atomic_enable, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:227:27:
note: (near initialization for 'vs_cursor_plane_helper_funcs.atomic_enable')/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:228:27:
error: initialization of 'void (*)(structdrm_plane*, structdrm_atomic_commit*)' from incompatible pointer type 'void (*)(structdrm_plane*, structdrm_atomic_state*)' [-Wincompatible-pointer- types]
228 | .atomic_disable =vs_cursor_plane_atomic_disable, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~/tmp/next/build/drivers/gpu/drm/verisilicon/vs_cursor_plane.c:228:27:
note: (near initialization for 'vs_cursor_plane_helper_funcs.atomic_disable')Caused by commit
8c4ae21891255(drm: verisilicon: add support for cursor planes)interacting with
5164f7e7ff8ec(drm: Rename structdrm_atomic_statetodrm_atomic_commit)which appears to be an ancestor of the verisilicon commit. I have used
the version from next-20260522 instead.