[PATCH] drm: amd: This is a patch to the amdgpu_drv.c file that fixes some warnings and errors found by the checkpatch.pl tool

kernel test robot lkp at intel.com
Sun Sep 4 12:35:17 UTC 2022


Hi Jingyu,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on drm-misc/drm-misc-next]
[also build test ERROR on linus/master v6.0-rc3 next-20220901]
[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#_base_tree_information]

url:    https://github.com/intel-lab-lkp/linux/commits/Jingyu-Wang/drm-amd-This-is-a-patch-to-the-amdgpu_drv-c-file-that-fixes-some-warnings-and-errors-found-by-the-checkpatch-pl-tool/20220904-165633
base:   git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
config: mips-randconfig-r006-20220904 (https://download.01.org/0day-ci/archive/20220904/202209042040.j7yoKrbB-lkp@intel.com/config)
compiler: mips64el-linux-gcc (GCC) 12.1.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
        # https://github.com/intel-lab-lkp/linux/commit/639ddf37854dd71c3ee836591db7518b146ae8ae
        git remote add linux-review https://github.com/intel-lab-lkp/linux
        git fetch --no-tags linux-review Jingyu-Wang/drm-amd-This-is-a-patch-to-the-amdgpu_drv-c-file-that-fixes-some-warnings-and-errors-found-by-the-checkpatch-pl-tool/20220904-165633
        git checkout 639ddf37854dd71c3ee836591db7518b146ae8ae
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-12.1.0 make.cross W=1 O=build_dir ARCH=mips SHELL=/bin/bash drivers/gpu/drm/amd/amdgpu/

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp at intel.com>

All error/warnings (new ones prefixed by >>):

>> drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:290:17: warning: missing terminating " character
     290 |                 "for passthrough or sriov, 10000 for all jobs.
         |                 ^
   In file included from include/linux/module.h:22,
                    from include/linux/device/driver.h:21,
                    from include/linux/device.h:32,
                    from include/drm/drm_print.h:32,
                    from include/drm/drm_mm.h:51,
                    from include/drm/drm_vma_manager.h:26,
                    from include/drm/drm_gem.h:40,
                    from drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:28:
>> drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:290:17: error: missing terminating " character
     290 |                 "for passthrough or sriov, 10000 for all jobs.
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   include/linux/moduleparam.h:26:61: note: in definition of macro '__MODULE_INFO'
      26 |                 = __MODULE_INFO_PREFIX __stringify(tag) "=" info
         |                                                             ^~~~
   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:289:1: note: in expansion of macro 'MODULE_PARM_DESC'
     289 | MODULE_PARM_DESC(lockup_timeout, "GPU lockup timeout in ms (default: for bare metal 10000 for non-compute jobs and 60000 for compute jobs; "
         | ^~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:291:17: error: expected ',' or ';' before numeric constant
     291 |                 0: keep default value. negative: infinity timeout),
         |                 ^
   include/linux/moduleparam.h:26:61: note: in definition of macro '__MODULE_INFO'
      26 |                 = __MODULE_INFO_PREFIX __stringify(tag) "=" info
         |                                                             ^~~~
   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:289:1: note: in expansion of macro 'MODULE_PARM_DESC'
     289 | MODULE_PARM_DESC(lockup_timeout, "GPU lockup timeout in ms (default: for bare metal 10000 for non-compute jobs and 60000 for compute jobs; "
         | ^~~~~~~~~~~~~~~~
   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:292:83: warning: missing terminating " character
     292 |                 format: for bare metal [Non-Compute] or [GFX,Compute,SDMA,Video]; "
         |                                                                                   ^
   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:292:83: error: missing terminating " character
>> drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:293:17: error: expected identifier or '(' before string constant
     293 |                 "for passthrough or sriov [all jobs] or [GFX,Compute,SDMA,Video].");
         |                 ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:604:9: warning: missing terminating " character
     604 |         "reserve gtt for smu debug usage, 0 = disable,
         |         ^
   drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:605:76: warning: missing terminating " character
     605 |                 0x1 = 256Mbyte, 0x2 = 512Mbyte, 0x4 = 1 Gbyte, 0x8 = 2GByte");
         |                                                                            ^
>> drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:2799:45: error: unterminated argument list invoking macro "MODULE_PARM_DESC"
    2799 | MODULE_LICENSE("GPL and additional rights");
         |                                             ^
>> drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:603:1: error: expected '=', ',', ';', 'asm' or '__attribute__' at end of input
     603 | MODULE_PARM_DESC(smu_memory_pool_size,
         | ^~~~~~~~~~~~~~~~
>> drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c:186:13: warning: 'amdgpu_drv_delayed_reset_work_handler' used but never defined
     186 | static void amdgpu_drv_delayed_reset_work_handler(struct work_struct *work);
         |             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~


vim +290 drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c

   185	
 > 186	static void amdgpu_drv_delayed_reset_work_handler(struct work_struct *work);
   187	
   188	struct amdgpu_mgpu_info mgpu_info = {
   189		.mutex = __MUTEX_INITIALIZER(mgpu_info.mutex),
   190		.delayed_reset_work = __DELAYED_WORK_INITIALIZER(
   191				mgpu_info.delayed_reset_work,
   192				amdgpu_drv_delayed_reset_work_handler, 0),
   193	};
   194	int amdgpu_ras_enable = -1;
   195	uint amdgpu_ras_mask = 0xffffffff;
   196	int amdgpu_bad_page_threshold = -1;
   197	struct amdgpu_watchdog_timer amdgpu_watchdog_timer = {
   198		.timeout_fatal_disable = false,
   199		.period = 0x0, /* default to 0x0 (timeout disable) */
   200	};
   201	
   202	/**
   203	 * DOC: vramlimit (int)
   204	 * Restrict the total amount of VRAM in MiB for testing.  The default is 0 (Use full VRAM).
   205	 */
   206	MODULE_PARM_DESC(vramlimit, "Restrict VRAM for testing, in megabytes");
   207	module_param_named(vramlimit, amdgpu_vram_limit, int, 0600);
   208	
   209	/**
   210	 * DOC: vis_vramlimit (int)
   211	 * Restrict the amount of CPU visible VRAM in MiB for testing.  The default is 0 (Use full CPU visible VRAM).
   212	 */
   213	MODULE_PARM_DESC(vis_vramlimit, "Restrict visible VRAM for testing, in megabytes");
   214	module_param_named(vis_vramlimit, amdgpu_vis_vram_limit, int, 0444);
   215	
   216	/**
   217	 * DOC: gartsize (uint)
   218	 * Restrict the size of GART in Mib (32, 64, etc.) for testing. The default is -1 (The size depends on asic).
   219	 */
   220	MODULE_PARM_DESC(gartsize, "Size of GART to setup in megabytes (32, 64, etc., -1=auto)");
   221	module_param_named(gartsize, amdgpu_gart_size, uint, 0600);
   222	
   223	/**
   224	 * DOC: gttsize (int)
   225	 * Restrict the size of GTT domain in MiB for testing. The default is -1 (It's VRAM size if 3GB < VRAM < 3/4 RAM,
   226	 * otherwise 3/4 RAM size).
   227	 */
   228	MODULE_PARM_DESC(gttsize, "Size of the GTT domain in megabytes (-1 = auto)");
   229	module_param_named(gttsize, amdgpu_gtt_size, int, 0600);
   230	
   231	/**
   232	 * DOC: moverate (int)
   233	 * Set maximum buffer migration rate in MB/s. The default is -1 (8 MB/s).
   234	 */
   235	MODULE_PARM_DESC(moverate, "Maximum buffer migration rate in MB/s. (32, 64, etc., -1=auto, 0=1=disabled)");
   236	module_param_named(moverate, amdgpu_moverate, int, 0600);
   237	
   238	/**
   239	 * DOC: audio (int)
   240	 * Set HDMI/DPAudio. Only affects non-DC display handling. The default is -1 (Enabled), set 0 to disabled it.
   241	 */
   242	MODULE_PARM_DESC(audio, "Audio enable (-1 = auto, 0 = disable, 1 = enable)");
   243	module_param_named(audio, amdgpu_audio, int, 0444);
   244	
   245	/**
   246	 * DOC: disp_priority (int)
   247	 * Set display Priority (1 = normal, 2 = high). Only affects non-DC display handling. The default is 0 (auto).
   248	 */
   249	MODULE_PARM_DESC(disp_priority, "Display Priority (0 = auto, 1 = normal, 2 = high)");
   250	module_param_named(disp_priority, amdgpu_disp_priority, int, 0444);
   251	
   252	/**
   253	 * DOC: hw_i2c (int)
   254	 * To enable hw i2c engine. Only affects non-DC display handling. The default is 0 (Disabled).
   255	 */
   256	MODULE_PARM_DESC(hw_i2c, "hw i2c engine enable (0 = disable)");
   257	module_param_named(hw_i2c, amdgpu_hw_i2c, int, 0444);
   258	
   259	/**
   260	 * DOC: pcie_gen2 (int)
   261	 * To disable PCIE Gen2/3 mode (0 = disable, 1 = enable). The default is -1 (auto, enabled).
   262	 */
   263	MODULE_PARM_DESC(pcie_gen2, "PCIE Gen2 mode (-1 = auto, 0 = disable, 1 = enable)");
   264	module_param_named(pcie_gen2, amdgpu_pcie_gen2, int, 0444);
   265	
   266	/**
   267	 * DOC: msi (int)
   268	 * To disable Message Signaled Interrupts (MSI) functionality (1 = enable, 0 = disable). The default is -1 (auto, enabled).
   269	 */
   270	MODULE_PARM_DESC(msi, "MSI support (1 = enable, 0 = disable, -1 = auto)");
   271	module_param_named(msi, amdgpu_msi, int, 0444);
   272	
   273	/**
   274	 * DOC: lockup_timeout (string)
   275	 * Set GPU scheduler timeout value in ms.
   276	 *
   277	 * The format can be [Non-Compute] or [GFX,Compute,SDMA,Video]. That is there can be one or
   278	 * multiple values specified. 0 and negative values are invalidated. They will be adjusted
   279	 * to the default timeout.
   280	 *
   281	 * - With one value specified, the setting will apply to all non-compute jobs.
   282	 * - With multiple values specified, the first one will be for GFX.
   283	 *   The second one is for Compute. The third and fourth ones are
   284	 *   for SDMA and Video.
   285	 *
   286	 * By default(with no lockup_timeout settings), the timeout for all non-compute(GFX, SDMA and Video)
   287	 * jobs is 10000. The timeout for compute is 60000.
   288	 */
   289	MODULE_PARM_DESC(lockup_timeout, "GPU lockup timeout in ms (default: for bare metal 10000 for non-compute jobs and 60000 for compute jobs; "
 > 290			"for passthrough or sriov, 10000 for all jobs.
 > 291			0: keep default value. negative: infinity timeout),
   292			format: for bare metal [Non-Compute] or [GFX,Compute,SDMA,Video]; "
 > 293			"for passthrough or sriov [all jobs] or [GFX,Compute,SDMA,Video].");
   294	module_param_string(lockup_timeout, amdgpu_lockup_timeout, sizeof(amdgpu_lockup_timeout), 0444);
   295	

-- 
0-DAY CI Kernel Test Service
https://01.org/lkp


More information about the amd-gfx mailing list