在 2026-05-25一的 16:02 +0100,Mark Brown写道: > Hi 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)
Oops, I put the patch for too long time that the behavior changed. I'm going to fix this. Thanks, Icenowy > | > ^~~~~~~~~~~~~~~~ > /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.
