Hi Thomas,
I love your patch! Perhaps something to improve:
[auto build test WARNING on linus/master]
[also build test WARNING on v5.10-rc3]
[cannot apply to next-20201112]
[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/Thomas-Zimmermann/drm-Build-fixe...
base:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
f8394f232b1eab649ce2df5c5f15b0e528c92091
config: arm-defconfig (attached as .config)
compiler: arm-linux-gnueabi-gcc (GCC) 9.3.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/0day-ci/linux/commit/23efc78fd2f5e71dabe163eec64d60989...
git remote add linux-review
https://github.com/0day-ci/linux
git fetch --no-tags linux-review
Thomas-Zimmermann/drm-Build-fixes-for-msm-and-mediatek/20201109-183736
git checkout 23efc78fd2f5e71dabe163eec64d609891160175
# save the attached .config to linux build tree
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross ARCH=arm
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
All warnings (new ones prefixed by >>):
In file included from drivers/gpu/drm/msm/msm_gpu.h:16,
from drivers/gpu/drm/msm/adreno/adreno_gpu.h:15,
from drivers/gpu/drm/msm/adreno/adreno_device.c:9:
> drivers/gpu/drm/msm/msm_drv.h:299:59: warning: 'struct
dma_buf_map' declared inside parameter list will not be visible outside of this
definition or declaration
299 | int msm_gem_prime_vmap(struct drm_gem_object
*obj, struct dma_buf_map *map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.h:300:62: warning: 'struct dma_buf_map' declared
inside parameter list will not be visible outside of this definition or declaration
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~
--
In file included from drivers/gpu/drm/msm/msm_gem.h:12,
from drivers/gpu/drm/msm/adreno/a6xx_gpu.c:5:
> drivers/gpu/drm/msm/msm_drv.h:299:59: warning: 'struct
dma_buf_map' declared inside parameter list will not be visible outside of this
definition or declaration
299 | int msm_gem_prime_vmap(struct drm_gem_object
*obj, struct dma_buf_map *map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.h:300:62: warning: 'struct dma_buf_map' declared
inside parameter list will not be visible outside of this definition or declaration
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/adreno/a6xx_gpu.c:33:6: warning: no previous prototype for
'a6xx_idle' [-Wmissing-prototypes]
33 | bool a6xx_idle(struct msm_gpu *gpu, struct msm_ringbuffer *ring)
| ^~~~~~~~~
--
In file included from drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.h:10,
from drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c:17:
> drivers/gpu/drm/msm/msm_drv.h:299:59: warning: 'struct
dma_buf_map' declared inside parameter list will not be visible outside of this
definition or declaration
299 | int msm_gem_prime_vmap(struct drm_gem_object
*obj, struct dma_buf_map *map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.h:300:62: warning: 'struct dma_buf_map' declared
inside parameter list will not be visible outside of this definition or declaration
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/disp/mdp5/mdp5_crtc.c:579:5: warning: no previous prototype for
'mdp5_crtc_setup_pipeline' [-Wmissing-prototypes]
579 | int mdp5_crtc_setup_pipeline(struct drm_crtc *crtc,
| ^~~~~~~~~~~~~~~~~~~~~~~~
--
In file included from drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c:17:
> drivers/gpu/drm/msm/msm_drv.h:299:59: warning: 'struct
dma_buf_map' declared inside parameter list will not be visible outside of this
definition or declaration
299 | int msm_gem_prime_vmap(struct drm_gem_object
*obj, struct dma_buf_map *map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.h:300:62: warning: 'struct dma_buf_map' declared
inside parameter list will not be visible outside of this definition or declaration
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c:297:5: warning: no previous prototype for
'mdp5_disable' [-Wmissing-prototypes]
297 | int mdp5_disable(struct mdp5_kms *mdp5_kms)
| ^~~~~~~~~~~~
drivers/gpu/drm/msm/disp/mdp5/mdp5_kms.c:317:5: warning: no previous prototype for
'mdp5_enable' [-Wmissing-prototypes]
317 | int mdp5_enable(struct mdp5_kms *mdp5_kms)
| ^~~~~~~~~~~
--
In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_kms.h:15,
from drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c:15:
> drivers/gpu/drm/msm/msm_drv.h:299:59: warning: 'struct
dma_buf_map' declared inside parameter list will not be visible outside of this
definition or declaration
299 | int msm_gem_prime_vmap(struct drm_gem_object
*obj, struct dma_buf_map *map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.h:300:62: warning: 'struct dma_buf_map' declared
inside parameter list will not be visible outside of this definition or declaration
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c: In function
'_dpu_core_perf_calc_crtc':
drivers/gpu/drm/msm/disp/dpu1/dpu_core_perf.c:113:25: warning: variable
'dpu_cstate' set but not used [-Wunused-but-set-variable]
113 | struct dpu_crtc_state *dpu_cstate;
| ^~~~~~~~~~
--
In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:17:
> drivers/gpu/drm/msm/msm_drv.h:299:59: warning: 'struct
dma_buf_map' declared inside parameter list will not be visible outside of this
definition or declaration
299 | int msm_gem_prime_vmap(struct drm_gem_object
*obj, struct dma_buf_map *map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.h:300:62: warning: 'struct dma_buf_map' declared
inside parameter list will not be visible outside of this definition or declaration
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c: In function
'dpu_encoder_virt_mode_set':
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:981:31: warning: variable
'num_dspp' set but not used [-Wunused-but-set-variable]
981 | int num_lm, num_ctl, num_pp, num_dspp;
| ^~~~~~~~
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:976:30: warning: variable
'topology' set but not used [-Wunused-but-set-variable]
976 | struct msm_display_topology topology;
| ^~~~~~~~
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c: In function
'_dpu_encoder_virt_enable_helper':
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:1099:26: warning: variable 'priv'
set but not used [-Wunused-but-set-variable]
1099 | struct msm_drm_private *priv;
| ^~~~
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c: In function
'dpu_encoder_virt_disable':
drivers/gpu/drm/msm/disp/dpu1/dpu_encoder.c:1210:18: warning: variable
'dpu_kms' set but not used [-Wunused-but-set-variable]
1210 | struct dpu_kms *dpu_kms;
| ^~~~~~~
--
In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_hw_mdss.h:11,
from drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c:9:
> drivers/gpu/drm/msm/msm_drv.h:299:59: warning: 'struct
dma_buf_map' declared inside parameter list will not be visible outside of this
definition or declaration
299 | int msm_gem_prime_vmap(struct drm_gem_object
*obj, struct dma_buf_map *map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.h:300:62: warning: 'struct dma_buf_map' declared
inside parameter list will not be visible outside of this definition or declaration
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c:122:19: warning: initialized field
overwritten [-Woverride-init]
122 | .max_linewidth = 4096,
| ^~~~
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c:122:19: note: (near initialization for
'sm8250_dpu_caps.max_linewidth')
In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog.c:11:
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog_format.h:7:23: warning:
'qcom_compressed_supported_formats' defined but not used
[-Wunused-const-variable=]
7 | static const uint32_t qcom_compressed_supported_formats[] = {
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c:18:
> drivers/gpu/drm/msm/msm_drv.h:299:59: warning: 'struct
dma_buf_map' declared inside parameter list will not be visible outside of this
definition or declaration
299 | int msm_gem_prime_vmap(struct drm_gem_object
*obj, struct dma_buf_map *map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.h:300:62: warning: 'struct dma_buf_map' declared
inside parameter list will not be visible outside of this definition or declaration
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~
In file included from drivers/gpu/drm/msm/disp/dpu1/dpu_plane.c:22:
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog_format.h:48:23: warning:
'plane_formats_yuv' defined but not used [-Wunused-const-variable=]
48 | static const uint32_t plane_formats_yuv[] = {
| ^~~~~~~~~~~~~~~~~
drivers/gpu/drm/msm/disp/dpu1/dpu_hw_catalog_format.h:17:23: warning:
'plane_formats' defined but not used [-Wunused-const-variable=]
17 | static const uint32_t plane_formats[] = {
| ^~~~~~~~~~~~~
--
In file included from drivers/gpu/drm/msm/msm_drv.c:21:
> drivers/gpu/drm/msm/msm_drv.h:299:59: warning: 'struct
dma_buf_map' declared inside parameter list will not be visible outside of this
definition or declaration
299 | int msm_gem_prime_vmap(struct drm_gem_object
*obj, struct dma_buf_map *map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.h:300:62: warning: 'struct dma_buf_map' declared
inside parameter list will not be visible outside of this definition or declaration
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.c:123:15: warning: no previous prototype for
'_msm_ioremap' [-Wmissing-prototypes]
123 | void __iomem *_msm_ioremap(struct platform_device *pdev, const char *name,
| ^~~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.c:1016:24: error: initialization of 'void * (*)(struct
drm_gem_object *)' from incompatible pointer type 'int (*)(struct drm_gem_object
*, struct dma_buf_map *)' [-Werror=incompatible-pointer-types]
1016 | .gem_prime_vmap = msm_gem_prime_vmap,
| ^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.c:1016:24: note: (near initialization for
'msm_driver.gem_prime_vmap')
drivers/gpu/drm/msm/msm_drv.c:1017:24: error: initialization of 'void (*)(struct
drm_gem_object *, void *)' from incompatible pointer type 'void (*)(struct
drm_gem_object *, struct dma_buf_map *)' [-Werror=incompatible-pointer-types]
1017 | .gem_prime_vunmap = msm_gem_prime_vunmap,
| ^~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.c:1017:24: note: (near initialization for
'msm_driver.gem_prime_vunmap')
cc1: some warnings being treated as errors
--
In file included from drivers/gpu/drm/msm/msm_fence.c:9:
> drivers/gpu/drm/msm/msm_drv.h:299:59: warning: 'struct
dma_buf_map' declared inside parameter list will not be visible outside of this
definition or declaration
299 | int msm_gem_prime_vmap(struct drm_gem_object
*obj, struct dma_buf_map *map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.h:300:62: warning: 'struct dma_buf_map' declared
inside parameter list will not be visible outside of this definition or declaration
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_fence.c: In function 'msm_fence_context_alloc':
drivers/gpu/drm/msm/msm_fence.c:23:2: warning: 'strncpy' specified bound 32
equals destination size [-Wstringop-truncation]
23 | strncpy(fctx->name, name, sizeof(fctx->name));
| ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
--
In file included from drivers/gpu/drm/msm/msm_gem_prime.c:11:
> drivers/gpu/drm/msm/msm_drv.h:299:59: warning: 'struct
dma_buf_map' declared inside parameter list will not be visible outside of this
definition or declaration
299 | int msm_gem_prime_vmap(struct drm_gem_object
*obj, struct dma_buf_map *map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_drv.h:300:62: warning: 'struct dma_buf_map' declared
inside parameter list will not be visible outside of this definition or declaration
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_gem_prime.c:25:59: warning: 'struct dma_buf_map'
declared inside parameter list will not be visible outside of this definition or
declaration
25 | int msm_gem_prime_vmap(struct drm_gem_object *obj, struct dma_buf_map *map)
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_gem_prime.c:25:5: error: conflicting types for
'msm_gem_prime_vmap'
25 | int msm_gem_prime_vmap(struct drm_gem_object *obj, struct dma_buf_map *map)
| ^~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/msm/msm_gem_prime.c:11:
drivers/gpu/drm/msm/msm_drv.h:299:5: note: previous declaration of
'msm_gem_prime_vmap' was here
299 | int msm_gem_prime_vmap(struct drm_gem_object *obj, struct dma_buf_map *map);
| ^~~~~~~~~~~~~~~~~~
drivers/gpu/drm/msm/msm_gem_prime.c: In function 'msm_gem_prime_vmap':
drivers/gpu/drm/msm/msm_gem_prime.c:32:2: error: implicit declaration of function
'dma_buf_map_set_vaddr' [-Werror=implicit-function-declaration]
32 | dma_buf_map_set_vaddr(map, vaddr);
| ^~~~~~~~~~~~~~~~~~~~~
drivers/gpu/drm/msm/msm_gem_prime.c: At top level:
drivers/gpu/drm/msm/msm_gem_prime.c:37:62: warning: 'struct dma_buf_map'
declared inside parameter list will not be visible outside of this definition or
declaration
37 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map *map)
| ^~~~~~~~~~~
drivers/gpu/drm/msm/msm_gem_prime.c:37:6: error: conflicting types for
'msm_gem_prime_vunmap'
37 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map *map)
| ^~~~~~~~~~~~~~~~~~~~
In file included from drivers/gpu/drm/msm/msm_gem_prime.c:11:
drivers/gpu/drm/msm/msm_drv.h:300:6: note: previous declaration of
'msm_gem_prime_vunmap' was here
300 | void msm_gem_prime_vunmap(struct drm_gem_object *obj, struct dma_buf_map
*map);
| ^~~~~~~~~~~~~~~~~~~~
cc1: some warnings being treated as errors
..
vim +299 drivers/gpu/drm/msm/msm_drv.h
275
276 int msm_gem_mmap_obj(struct drm_gem_object *obj,
277 struct vm_area_struct *vma);
278 int msm_gem_mmap(struct file *filp, struct vm_area_struct *vma);
279 vm_fault_t msm_gem_fault(struct vm_fault *vmf);
280 uint64_t msm_gem_mmap_offset(struct drm_gem_object *obj);
281 int msm_gem_get_iova(struct drm_gem_object *obj,
282 struct msm_gem_address_space *aspace, uint64_t *iova);
283 int msm_gem_get_and_pin_iova_range(struct drm_gem_object *obj,
284 struct msm_gem_address_space *aspace, uint64_t *iova,
285 u64 range_start, u64 range_end);
286 int msm_gem_get_and_pin_iova(struct drm_gem_object *obj,
287 struct msm_gem_address_space *aspace, uint64_t *iova);
288 uint64_t msm_gem_iova(struct drm_gem_object *obj,
289 struct msm_gem_address_space *aspace);
290 void msm_gem_unpin_iova(struct drm_gem_object *obj,
291 struct msm_gem_address_space *aspace);
292 struct page **msm_gem_get_pages(struct drm_gem_object *obj);
293 void msm_gem_put_pages(struct drm_gem_object *obj);
294 int msm_gem_dumb_create(struct drm_file *file, struct drm_device *dev,
295 struct drm_mode_create_dumb *args);
296 int msm_gem_dumb_map_offset(struct drm_file *file, struct drm_device *dev,
297 uint32_t handle, uint64_t *offset);
298 struct sg_table *msm_gem_prime_get_sg_table(struct drm_gem_object *obj);
299 int msm_gem_prime_vmap(struct drm_gem_object *obj, struct
dma_buf_map *map);
300 void msm_gem_prime_vunmap(struct drm_gem_object *obj,
struct dma_buf_map *map);
301 int msm_gem_prime_mmap(struct drm_gem_object *obj, struct vm_area_struct *vma);
302 struct drm_gem_object *msm_gem_prime_import_sg_table(struct drm_device *dev,
303 struct dma_buf_attachment *attach, struct sg_table *sg);
304 int msm_gem_prime_pin(struct drm_gem_object *obj);
305 void msm_gem_prime_unpin(struct drm_gem_object *obj);
306 void *msm_gem_get_vaddr(struct drm_gem_object *obj);
307 void *msm_gem_get_vaddr_active(struct drm_gem_object *obj);
308 void msm_gem_put_vaddr(struct drm_gem_object *obj);
309 int msm_gem_madvise(struct drm_gem_object *obj, unsigned madv);
310 int msm_gem_sync_object(struct drm_gem_object *obj,
311 struct msm_fence_context *fctx, bool exclusive);
312 void msm_gem_active_get(struct drm_gem_object *obj, struct msm_gpu *gpu);
313 void msm_gem_active_put(struct drm_gem_object *obj);
314 int msm_gem_cpu_prep(struct drm_gem_object *obj, uint32_t op, ktime_t *timeout);
315 int msm_gem_cpu_fini(struct drm_gem_object *obj);
316 void msm_gem_free_object(struct drm_gem_object *obj);
317 int msm_gem_new_handle(struct drm_device *dev, struct drm_file *file,
318 uint32_t size, uint32_t flags, uint32_t *handle, char *name);
319 struct drm_gem_object *msm_gem_new(struct drm_device *dev,
320 uint32_t size, uint32_t flags);
321 struct drm_gem_object *msm_gem_new_locked(struct drm_device *dev,
322 uint32_t size, uint32_t flags);
323 void *msm_gem_kernel_new(struct drm_device *dev, uint32_t size,
324 uint32_t flags, struct msm_gem_address_space *aspace,
325 struct drm_gem_object **bo, uint64_t *iova);
326 void *msm_gem_kernel_new_locked(struct drm_device *dev, uint32_t size,
327 uint32_t flags, struct msm_gem_address_space *aspace,
328 struct drm_gem_object **bo, uint64_t *iova);
329 void msm_gem_kernel_put(struct drm_gem_object *bo,
330 struct msm_gem_address_space *aspace, bool locked);
331 struct drm_gem_object *msm_gem_import(struct drm_device *dev,
332 struct dma_buf *dmabuf, struct sg_table *sgt);
333 void msm_gem_free_work(struct work_struct *work);
334
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org