[PATCH drm-misc-next v5 4/6] drm/gpuvm: track/lock/validate external/evicted objects

kernel test robot lkp at intel.com
Mon Oct 2 15:40:08 UTC 2023


Hi Danilo,

kernel test robot noticed the following build warnings:

[auto build test WARNING on a4ead6e37e3290cff399e2598d75e98777b69b37]

url:    https://github.com/intel-lab-lkp/linux/commits/Danilo-Krummrich/drm-gpuvm-add-common-dma-resv-per-struct-drm_gpuvm/20230929-031831
base:   a4ead6e37e3290cff399e2598d75e98777b69b37
patch link:    https://lore.kernel.org/r/20230928191624.13703-5-dakr%40redhat.com
patch subject: [PATCH drm-misc-next v5 4/6] drm/gpuvm: track/lock/validate external/evicted objects
reproduce: (https://download.01.org/0day-ci/archive/20231002/202310022331.lPOA8kRt-lkp@intel.com/reproduce)

If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp at intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202310022331.lPOA8kRt-lkp@intel.com/

All warnings (new ones prefixed by >>):

>> ./include/drm/drm_gpuvm.h:563: warning: Function parameter or member 'vm_exec' not described in 'drm_gpuvm_exec_unlock'
>> ./include/drm/drm_gpuvm.h:563: warning: expecting prototype for drm_gpuvm_lock(). Prototype was for drm_gpuvm_exec_unlock() instead
>> ./include/drm/drm_gpuvm.h:601: warning: expecting prototype for drm_gpuvm_exec_resv_add_fence(). Prototype was for drm_gpuvm_exec_validate() instead

vim +563 ./include/drm/drm_gpuvm.h

   527	
   528	int drm_gpuvm_prepare_objects(struct drm_gpuvm *gpuvm,
   529				      struct drm_exec *exec,
   530				      unsigned int num_fences);
   531	
   532	int drm_gpuvm_prepare_range(struct drm_gpuvm *gpuvm,
   533				    struct drm_exec *exec,
   534				    u64 addr, u64 range,
   535				    unsigned int num_fences);
   536	
   537	int drm_gpuvm_exec_lock(struct drm_gpuvm_exec *vm_exec,
   538				unsigned int num_fences,
   539				bool interruptible);
   540	
   541	int drm_gpuvm_exec_lock_array(struct drm_gpuvm_exec *vm_exec,
   542				      struct drm_gem_object **objs,
   543				      unsigned int num_objs,
   544				      unsigned int num_fences,
   545				      bool interruptible);
   546	
   547	int drm_gpuvm_exec_lock_range(struct drm_gpuvm_exec *vm_exec,
   548				      u64 addr, u64 range,
   549				      unsigned int num_fences,
   550				      bool interruptible);
   551	
   552	/**
   553	 * drm_gpuvm_lock() - lock all dma-resv of all assoiciated BOs
   554	 * @gpuvm: the &drm_gpuvm
   555	 *
   556	 * Releases all dma-resv locks of all &drm_gem_objects previously acquired
   557	 * through drm_gpuvm_lock() or its variants.
   558	 *
   559	 * Returns: 0 on success, negative error code on failure.
   560	 */
   561	static inline void
   562	drm_gpuvm_exec_unlock(struct drm_gpuvm_exec *vm_exec)
 > 563	{
   564		drm_exec_fini(&vm_exec->exec);
   565	}
   566	
   567	int drm_gpuvm_validate(struct drm_gpuvm *gpuvm, struct drm_exec *exec);
   568	void drm_gpuvm_resv_add_fence(struct drm_gpuvm *gpuvm,
   569				      struct drm_exec *exec,
   570				      struct dma_fence *fence,
   571				      enum dma_resv_usage private_usage,
   572				      enum dma_resv_usage extobj_usage);
   573	
   574	/**
   575	 * drm_gpuvm_exec_resv_add_fence()
   576	 * @vm_exec: the &drm_gpuvm_exec abstraction
   577	 * @fence: fence to add
   578	 * @private_usage: private dma-resv usage
   579	 * @extobj_usage: extobj dma-resv usage
   580	 *
   581	 * See drm_gpuvm_resv_add_fence().
   582	 */
   583	static inline void
   584	drm_gpuvm_exec_resv_add_fence(struct drm_gpuvm_exec *vm_exec,
   585				      struct dma_fence *fence,
   586				      enum dma_resv_usage private_usage,
   587				      enum dma_resv_usage extobj_usage)
   588	{
   589		drm_gpuvm_resv_add_fence(vm_exec->vm, &vm_exec->exec, fence,
   590					 private_usage, extobj_usage);
   591	}
   592	
   593	/**
   594	 * drm_gpuvm_exec_resv_add_fence()
   595	 * @vm_exec: the &drm_gpuvm_exec abstraction
   596	 *
   597	 * See drm_gpuvm_validate().
   598	 */
   599	static inline int
   600	drm_gpuvm_exec_validate(struct drm_gpuvm_exec *vm_exec)
 > 601	{
   602		return drm_gpuvm_validate(vm_exec->vm, &vm_exec->exec);
   603	}
   604	

-- 
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki


More information about the dri-devel mailing list