Hi Ryan, Thank you for the patch! Perhaps something to improve: [auto build test WARNING on next-20210712] [cannot apply to drm-intel/for-linux-next drm-tip/drm-tip drm-exynos/exynos-drm-next tegra-drm/drm/tegra/for-next linus/master drm/drm-next v5.14-rc1 v5.13 v5.13-rc7 v5.14-rc1] [If your patch is applied to the wrong git tree, kindly drop us a note. And when submitting patch, we suggest to use '--base' as documented in https://git-scm.com/docs/git-format-patch] url: https://github.com/0day-ci/linux/commits/Ryan-Taylor/drm-amdgpu-modernize-virtual-display-feature/20210713-034827 base: db503865b9ba6284edfee3825846a464cc4f4c61 config: i386-randconfig-r013-20210712 (attached as .config) compiler: gcc-9 (Debian 9.3.0-22) 9.3.0 reproduce (this is a W=1 build): # https://github.com/0day-ci/linux/commit/da96fc5ec68bb4054ce0f7f1c9c10d3305ba217f git remote add linux-review https://github.com/0day-ci/linux git fetch --no-tags linux-review Ryan-Taylor/drm-amdgpu-modernize-virtual-display-feature/20210713-034827 git checkout da96fc5ec68bb4054ce0f7f1c9c10d3305ba217f # save the attached .config to linux build tree make W=1 ARCH=i386 If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot All warnings (new ones prefixed by >>): drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c:165:5: warning: no previous prototype for 'amdgpu_vkms_crtc_init' [-Wmissing-prototypes] 165 | int amdgpu_vkms_crtc_init(struct drm_device *dev, struct drm_crtc *crtc, | ^~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c:332:20: error: initialization of 'void (*)(struct drm_plane *, struct drm_atomic_state *)' from incompatible pointer type 'void (*)(struct drm_plane *, struct drm_plane_state *)' [-Werror=incompatible-pointer-types] 332 | .atomic_update = amdgpu_vkms_plane_atomic_update, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c:332:20: note: (near initialization for 'amdgpu_vkms_primary_helper_funcs.atomic_update') drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c:333:19: error: initialization of 'int (*)(struct drm_plane *, struct drm_atomic_state *)' from incompatible pointer type 'int (*)(struct drm_plane *, struct drm_plane_state *)' [-Werror=incompatible-pointer-types] 333 | .atomic_check = amdgpu_vkms_plane_atomic_check, | ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c:333:19: note: (near initialization for 'amdgpu_vkms_primary_helper_funcs.atomic_check') drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c:338:19: warning: no previous prototype for 'amdgpu_vkms_plane_init' [-Wmissing-prototypes] 338 | struct drm_plane *amdgpu_vkms_plane_init(struct drm_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~ >> drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c:363:5: warning: no previous prototype for 'amdgpu_vkms_output_init' [-Wmissing-prototypes] 363 | int amdgpu_vkms_output_init(struct drm_device *dev, | ^~~~~~~~~~~~~~~~~~~~~~~ cc1: some warnings being treated as errors vim +/amdgpu_vkms_output_init +363 drivers/gpu/drm/amd/amdgpu/amdgpu_vkms.c 96f64e3b91a195 Ryan Taylor 2021-07-12 362 96f64e3b91a195 Ryan Taylor 2021-07-12 @363 int amdgpu_vkms_output_init(struct drm_device *dev, 96f64e3b91a195 Ryan Taylor 2021-07-12 364 struct amdgpu_vkms_output *output, int index) 96f64e3b91a195 Ryan Taylor 2021-07-12 365 { 96f64e3b91a195 Ryan Taylor 2021-07-12 366 struct drm_connector *connector = &output->connector; 96f64e3b91a195 Ryan Taylor 2021-07-12 367 struct drm_encoder *encoder = &output->encoder; 96f64e3b91a195 Ryan Taylor 2021-07-12 368 struct drm_crtc *crtc = &output->crtc; 96f64e3b91a195 Ryan Taylor 2021-07-12 369 struct drm_plane *primary, *cursor = NULL; 96f64e3b91a195 Ryan Taylor 2021-07-12 370 int ret; 96f64e3b91a195 Ryan Taylor 2021-07-12 371 96f64e3b91a195 Ryan Taylor 2021-07-12 372 primary = amdgpu_vkms_plane_init(dev, DRM_PLANE_TYPE_PRIMARY, index); 96f64e3b91a195 Ryan Taylor 2021-07-12 373 if (IS_ERR(primary)) 96f64e3b91a195 Ryan Taylor 2021-07-12 374 return PTR_ERR(primary); 96f64e3b91a195 Ryan Taylor 2021-07-12 375 96f64e3b91a195 Ryan Taylor 2021-07-12 376 ret = amdgpu_vkms_crtc_init(dev, crtc, primary, cursor); 96f64e3b91a195 Ryan Taylor 2021-07-12 377 if (ret) 96f64e3b91a195 Ryan Taylor 2021-07-12 378 goto err_crtc; 96f64e3b91a195 Ryan Taylor 2021-07-12 379 96f64e3b91a195 Ryan Taylor 2021-07-12 380 ret = drm_connector_init(dev, connector, &amdgpu_vkms_connector_funcs, 96f64e3b91a195 Ryan Taylor 2021-07-12 381 DRM_MODE_CONNECTOR_VIRTUAL); 96f64e3b91a195 Ryan Taylor 2021-07-12 382 if (ret) { 96f64e3b91a195 Ryan Taylor 2021-07-12 383 DRM_ERROR("Failed to init connector\n"); 96f64e3b91a195 Ryan Taylor 2021-07-12 384 goto err_connector; 96f64e3b91a195 Ryan Taylor 2021-07-12 385 } 96f64e3b91a195 Ryan Taylor 2021-07-12 386 96f64e3b91a195 Ryan Taylor 2021-07-12 387 drm_connector_helper_add(connector, &amdgpu_vkms_conn_helper_funcs); 96f64e3b91a195 Ryan Taylor 2021-07-12 388 96f64e3b91a195 Ryan Taylor 2021-07-12 389 ret = drm_simple_encoder_init(dev, encoder, DRM_MODE_ENCODER_VIRTUAL); 96f64e3b91a195 Ryan Taylor 2021-07-12 390 if (ret) { 96f64e3b91a195 Ryan Taylor 2021-07-12 391 DRM_ERROR("Failed to init encoder\n"); 96f64e3b91a195 Ryan Taylor 2021-07-12 392 goto err_encoder; 96f64e3b91a195 Ryan Taylor 2021-07-12 393 } 96f64e3b91a195 Ryan Taylor 2021-07-12 394 encoder->possible_crtcs = 1 << index; 96f64e3b91a195 Ryan Taylor 2021-07-12 395 96f64e3b91a195 Ryan Taylor 2021-07-12 396 ret = drm_connector_attach_encoder(connector, encoder); 96f64e3b91a195 Ryan Taylor 2021-07-12 397 if (ret) { 96f64e3b91a195 Ryan Taylor 2021-07-12 398 DRM_ERROR("Failed to attach connector to encoder\n"); 96f64e3b91a195 Ryan Taylor 2021-07-12 399 goto err_attach; 96f64e3b91a195 Ryan Taylor 2021-07-12 400 } 96f64e3b91a195 Ryan Taylor 2021-07-12 401 96f64e3b91a195 Ryan Taylor 2021-07-12 402 drm_mode_config_reset(dev); 96f64e3b91a195 Ryan Taylor 2021-07-12 403 96f64e3b91a195 Ryan Taylor 2021-07-12 404 return 0; 96f64e3b91a195 Ryan Taylor 2021-07-12 405 96f64e3b91a195 Ryan Taylor 2021-07-12 406 err_attach: 96f64e3b91a195 Ryan Taylor 2021-07-12 407 drm_encoder_cleanup(encoder); 96f64e3b91a195 Ryan Taylor 2021-07-12 408 96f64e3b91a195 Ryan Taylor 2021-07-12 409 err_encoder: 96f64e3b91a195 Ryan Taylor 2021-07-12 410 drm_connector_cleanup(connector); 96f64e3b91a195 Ryan Taylor 2021-07-12 411 96f64e3b91a195 Ryan Taylor 2021-07-12 412 err_connector: 96f64e3b91a195 Ryan Taylor 2021-07-12 413 drm_crtc_cleanup(crtc); 96f64e3b91a195 Ryan Taylor 2021-07-12 414 96f64e3b91a195 Ryan Taylor 2021-07-12 415 err_crtc: 96f64e3b91a195 Ryan Taylor 2021-07-12 416 drm_plane_cleanup(primary); 96f64e3b91a195 Ryan Taylor 2021-07-12 417 96f64e3b91a195 Ryan Taylor 2021-07-12 418 return ret; 96f64e3b91a195 Ryan Taylor 2021-07-12 419 } da96fc5ec68bb4 Ryan Taylor 2021-07-12 420 --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org