lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite for Android: free password hash cracker in your pocket
[<prev] [next>] [day] [month] [year] [list]
Message-ID: <202110281054.vK6MiNnx-lkp@intel.com>
Date:   Thu, 28 Oct 2021 10:51:04 +0800
From:   kernel test robot <lkp@...el.com>
To:     Jude Shih <shenshih@....com>
Cc:     kbuild-all@...ts.01.org, linux-kernel@...r.kernel.org,
        Alex Deucher <alexander.deucher@....com>,
        Nicholas Kazlauskas <nicholas.kazlauskas@....com>
Subject: [agd5f:drm-next 135/157]
 drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:1111:59: error:
 'struct dc_debug_options' has no member named 'dpia_debug'

tree:   https://gitlab.freedesktop.org/agd5f/linux.git drm-next
head:   6a806feef1d2620abf7a5a9da871c5a3774c7497
commit: 707021dc0e16f676b58e6dc959bc24779c14496b [135/157] drm/amd/display: Enable dpia in dmub only for DCN31 B0
config: arc-allyesconfig (attached as .config)
compiler: arceb-elf-gcc (GCC) 11.2.0
reproduce (this is a W=1 build):
        wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross
        chmod +x ~/bin/make.cross
        git remote add agd5f https://gitlab.freedesktop.org/agd5f/linux.git
        git fetch --no-tags agd5f drm-next
        git checkout 707021dc0e16f676b58e6dc959bc24779c14496b
        # save the attached .config to linux build tree
        mkdir build_dir
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.2.0 make.cross O=build_dir ARCH=arc SHELL=/bin/bash

If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp@...el.com>

Note: the agd5f/drm-next HEAD 6a806feef1d2620abf7a5a9da871c5a3774c7497 builds fine.
      It only hurts bisectability.

All errors (new ones prefixed by >>):

   In file included from drivers/gpu/drm/amd/amdgpu/../display/dmub/dmub_srv.h:67,
                    from drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:35:
   drivers/gpu/drm/amd/amdgpu/../display/dmub/inc/dmub_cmd.h: In function 'dmub_rb_flush_pending':
   drivers/gpu/drm/amd/amdgpu/../display/dmub/inc/dmub_cmd.h:2870:26: error: variable 'temp' set but not used [-Werror=unused-but-set-variable]
    2870 |                 uint64_t temp;
         |                          ^~~~
   drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c: In function 'dm_dmub_hw_init':
>> drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:1111:59: error: 'struct dc_debug_options' has no member named 'dpia_debug'
    1111 |                         hw_params.disable_dpia = dc->debug.dpia_debug.bits.disable_dpia;
         |                                                           ^
   drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c: At top level:
   drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:11402:5: error: no previous prototype for 'amdgpu_dm_set_dmub_async_sync_status' [-Werror=missing-prototypes]
   11402 | int amdgpu_dm_set_dmub_async_sync_status(bool is_cmd_aux, struct dc_context *ctx,
         |     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   In file included from include/linux/perf_event.h:25,
                    from include/linux/trace_events.h:10,
                    from include/trace/trace_events.h:21,
                    from include/trace/define_trace.h:102,
                    from drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm_trace.h:669,
                    from drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c:41:
   arch/arc/include/asm/perf_event.h:126:27: error: 'arc_pmu_cache_map' defined but not used [-Werror=unused-const-variable=]
     126 | static const unsigned int arc_pmu_cache_map[C(MAX)][C(OP_MAX)][C(RESULT_MAX)] = {
         |                           ^~~~~~~~~~~~~~~~~
   arch/arc/include/asm/perf_event.h:91:27: error: 'arc_pmu_ev_hw_map' defined but not used [-Werror=unused-const-variable=]
      91 | static const char * const arc_pmu_ev_hw_map[] = {
         |                           ^~~~~~~~~~~~~~~~~
   cc1: all warnings being treated as errors


vim +1111 drivers/gpu/drm/amd/amdgpu/../display/amdgpu_dm/amdgpu_dm.c

  1006	
  1007	static int dm_dmub_hw_init(struct amdgpu_device *adev)
  1008	{
  1009		const struct dmcub_firmware_header_v1_0 *hdr;
  1010		struct dmub_srv *dmub_srv = adev->dm.dmub_srv;
  1011		struct dmub_srv_fb_info *fb_info = adev->dm.dmub_fb_info;
  1012		const struct firmware *dmub_fw = adev->dm.dmub_fw;
  1013		struct dmcu *dmcu = adev->dm.dc->res_pool->dmcu;
  1014		struct abm *abm = adev->dm.dc->res_pool->abm;
  1015		struct dmub_srv_hw_params hw_params;
  1016		enum dmub_status status;
  1017		const unsigned char *fw_inst_const, *fw_bss_data;
  1018		uint32_t i, fw_inst_const_size, fw_bss_data_size;
  1019		bool has_hw_support;
  1020		struct dc *dc = adev->dm.dc;
  1021	
  1022		if (!dmub_srv)
  1023			/* DMUB isn't supported on the ASIC. */
  1024			return 0;
  1025	
  1026		if (!fb_info) {
  1027			DRM_ERROR("No framebuffer info for DMUB service.\n");
  1028			return -EINVAL;
  1029		}
  1030	
  1031		if (!dmub_fw) {
  1032			/* Firmware required for DMUB support. */
  1033			DRM_ERROR("No firmware provided for DMUB.\n");
  1034			return -EINVAL;
  1035		}
  1036	
  1037		status = dmub_srv_has_hw_support(dmub_srv, &has_hw_support);
  1038		if (status != DMUB_STATUS_OK) {
  1039			DRM_ERROR("Error checking HW support for DMUB: %d\n", status);
  1040			return -EINVAL;
  1041		}
  1042	
  1043		if (!has_hw_support) {
  1044			DRM_INFO("DMUB unsupported on ASIC\n");
  1045			return 0;
  1046		}
  1047	
  1048		hdr = (const struct dmcub_firmware_header_v1_0 *)dmub_fw->data;
  1049	
  1050		fw_inst_const = dmub_fw->data +
  1051				le32_to_cpu(hdr->header.ucode_array_offset_bytes) +
  1052				PSP_HEADER_BYTES;
  1053	
  1054		fw_bss_data = dmub_fw->data +
  1055			      le32_to_cpu(hdr->header.ucode_array_offset_bytes) +
  1056			      le32_to_cpu(hdr->inst_const_bytes);
  1057	
  1058		/* Copy firmware and bios info into FB memory. */
  1059		fw_inst_const_size = le32_to_cpu(hdr->inst_const_bytes) -
  1060				     PSP_HEADER_BYTES - PSP_FOOTER_BYTES;
  1061	
  1062		fw_bss_data_size = le32_to_cpu(hdr->bss_data_bytes);
  1063	
  1064		/* if adev->firmware.load_type == AMDGPU_FW_LOAD_PSP,
  1065		 * amdgpu_ucode_init_single_fw will load dmub firmware
  1066		 * fw_inst_const part to cw0; otherwise, the firmware back door load
  1067		 * will be done by dm_dmub_hw_init
  1068		 */
  1069		if (adev->firmware.load_type != AMDGPU_FW_LOAD_PSP) {
  1070			memcpy(fb_info->fb[DMUB_WINDOW_0_INST_CONST].cpu_addr, fw_inst_const,
  1071					fw_inst_const_size);
  1072		}
  1073	
  1074		if (fw_bss_data_size)
  1075			memcpy(fb_info->fb[DMUB_WINDOW_2_BSS_DATA].cpu_addr,
  1076			       fw_bss_data, fw_bss_data_size);
  1077	
  1078		/* Copy firmware bios info into FB memory. */
  1079		memcpy(fb_info->fb[DMUB_WINDOW_3_VBIOS].cpu_addr, adev->bios,
  1080		       adev->bios_size);
  1081	
  1082		/* Reset regions that need to be reset. */
  1083		memset(fb_info->fb[DMUB_WINDOW_4_MAILBOX].cpu_addr, 0,
  1084		fb_info->fb[DMUB_WINDOW_4_MAILBOX].size);
  1085	
  1086		memset(fb_info->fb[DMUB_WINDOW_5_TRACEBUFF].cpu_addr, 0,
  1087		       fb_info->fb[DMUB_WINDOW_5_TRACEBUFF].size);
  1088	
  1089		memset(fb_info->fb[DMUB_WINDOW_6_FW_STATE].cpu_addr, 0,
  1090		       fb_info->fb[DMUB_WINDOW_6_FW_STATE].size);
  1091	
  1092		/* Initialize hardware. */
  1093		memset(&hw_params, 0, sizeof(hw_params));
  1094		hw_params.fb_base = adev->gmc.fb_start;
  1095		hw_params.fb_offset = adev->gmc.aper_base;
  1096	
  1097		/* backdoor load firmware and trigger dmub running */
  1098		if (adev->firmware.load_type != AMDGPU_FW_LOAD_PSP)
  1099			hw_params.load_inst_const = true;
  1100	
  1101		if (dmcu)
  1102			hw_params.psp_version = dmcu->psp_version;
  1103	
  1104		for (i = 0; i < fb_info->num_fb; ++i)
  1105			hw_params.fb[i] = &fb_info->fb[i];
  1106	
  1107		switch (adev->asic_type) {
  1108		case CHIP_YELLOW_CARP:
  1109			if (dc->ctx->asic_id.hw_internal_rev != YELLOW_CARP_A0) {
  1110				hw_params.dpia_supported = true;
> 1111				hw_params.disable_dpia = dc->debug.dpia_debug.bits.disable_dpia;
  1112			}
  1113			break;
  1114		default:
  1115			break;
  1116		}
  1117	
  1118		status = dmub_srv_hw_init(dmub_srv, &hw_params);
  1119		if (status != DMUB_STATUS_OK) {
  1120			DRM_ERROR("Error initializing DMUB HW: %d\n", status);
  1121			return -EINVAL;
  1122		}
  1123	
  1124		/* Wait for firmware load to finish. */
  1125		status = dmub_srv_wait_for_auto_load(dmub_srv, 100000);
  1126		if (status != DMUB_STATUS_OK)
  1127			DRM_WARN("Wait for DMUB auto-load failed: %d\n", status);
  1128	
  1129		/* Init DMCU and ABM if available. */
  1130		if (dmcu && abm) {
  1131			dmcu->funcs->dmcu_init(dmcu);
  1132			abm->dmcu_is_running = dmcu->funcs->is_dmcu_initialized(dmcu);
  1133		}
  1134	
  1135		if (!adev->dm.dc->ctx->dmub_srv)
  1136			adev->dm.dc->ctx->dmub_srv = dc_dmub_srv_create(adev->dm.dc, dmub_srv);
  1137		if (!adev->dm.dc->ctx->dmub_srv) {
  1138			DRM_ERROR("Couldn't allocate DC DMUB server!\n");
  1139			return -ENOMEM;
  1140		}
  1141	
  1142		DRM_INFO("DMUB hardware initialized: version=0x%08X\n",
  1143			 adev->dm.dmcub_fw_version);
  1144	
  1145		return 0;
  1146	}
  1147	

---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org

Download attachment ".config.gz" of type "application/gzip" (69252 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ