tree: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master head: 07a56bb875afbe39dabbf6ba7b83783d166863db commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address spaces date: 4 weeks ago config: arm64-randconfig-s032-20200717 (attached as .config) compiler: aarch64-linux-gcc (GCC) 9.3.0 reproduce: wget https://raw.githubusercontent.com/intel/lkp-tests/master/sbin/make.cross -O ~/bin/make.cross chmod +x ~/bin/make.cross # apt-get install sparse # sparse version: v0.6.2-49-g707c5017-dirty git checkout 670d0a4b10704667765f7d18f7592993d02783aa # save the attached .config to linux build tree COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-9.3.0 make.cross C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' ARCH=arm64
If you fix the issue, kindly add following tag as appropriate Reported-by: kernel test robot <l...@intel.com> sparse warnings: (new ones prefixed by >>) >> drivers/gpu/drm/msm/msm_fbdev.c:121:26: sparse: sparse: incorrect type in >> assignment (different address spaces) @@ expected char [noderef] __iomem >> *screen_base @@ got void * @@ >> drivers/gpu/drm/msm/msm_fbdev.c:121:26: sparse: expected char [noderef] >> __iomem *screen_base drivers/gpu/drm/msm/msm_fbdev.c:121:26: sparse: got void * vim +121 drivers/gpu/drm/msm/msm_fbdev.c 8f67da335d08bc0 Hai Li 2014-06-18 59 c8afe684c95cd17 Rob Clark 2013-06-26 60 static int msm_fbdev_create(struct drm_fb_helper *helper, c8afe684c95cd17 Rob Clark 2013-06-26 61 struct drm_fb_helper_surface_size *sizes) c8afe684c95cd17 Rob Clark 2013-06-26 62 { c8afe684c95cd17 Rob Clark 2013-06-26 63 struct msm_fbdev *fbdev = to_msm_fbdev(helper); c8afe684c95cd17 Rob Clark 2013-06-26 64 struct drm_device *dev = helper->dev; f59f62d592a0553 Rob Clark 2017-06-13 65 struct msm_drm_private *priv = dev->dev_private; c8afe684c95cd17 Rob Clark 2013-06-26 66 struct drm_framebuffer *fb = NULL; 38958bab824a795 Rob Clark 2017-07-11 67 struct drm_gem_object *bo; c8afe684c95cd17 Rob Clark 2013-06-26 68 struct fb_info *fbi = NULL; 78babc1633c4b06 Rob Clark 2016-11-11 69 uint64_t paddr; 466e5606cc21fc7 Rob Clark 2017-07-11 70 uint32_t format; 466e5606cc21fc7 Rob Clark 2017-07-11 71 int ret, pitch; 466e5606cc21fc7 Rob Clark 2017-07-11 72 466e5606cc21fc7 Rob Clark 2017-07-11 73 format = drm_mode_legacy_fb_format(sizes->surface_bpp, sizes->surface_depth); c8afe684c95cd17 Rob Clark 2013-06-26 74 c8afe684c95cd17 Rob Clark 2013-06-26 75 DBG("create fbdev: %dx%d@%d (%dx%d)", sizes->surface_width, c8afe684c95cd17 Rob Clark 2013-06-26 76 sizes->surface_height, sizes->surface_bpp, c8afe684c95cd17 Rob Clark 2013-06-26 77 sizes->fb_width, sizes->fb_height); c8afe684c95cd17 Rob Clark 2013-06-26 78 466e5606cc21fc7 Rob Clark 2017-07-11 79 pitch = align_pitch(sizes->surface_width, sizes->surface_bpp); 466e5606cc21fc7 Rob Clark 2017-07-11 80 fb = msm_alloc_stolen_fb(dev, sizes->surface_width, 466e5606cc21fc7 Rob Clark 2017-07-11 81 sizes->surface_height, pitch, format); c8afe684c95cd17 Rob Clark 2013-06-26 82 c8afe684c95cd17 Rob Clark 2013-06-26 83 if (IS_ERR(fb)) { 6a41da17e87dee2 Mamta Shukla 2018-10-20 84 DRM_DEV_ERROR(dev->dev, "failed to allocate fb\n"); 789d4c300e10eb2 Emil Velikov 2018-03-28 85 return PTR_ERR(fb); c8afe684c95cd17 Rob Clark 2013-06-26 86 } c8afe684c95cd17 Rob Clark 2013-06-26 87 38958bab824a795 Rob Clark 2017-07-11 88 bo = msm_framebuffer_bo(fb, 0); 38958bab824a795 Rob Clark 2017-07-11 89 c8afe684c95cd17 Rob Clark 2013-06-26 90 mutex_lock(&dev->struct_mutex); c8afe684c95cd17 Rob Clark 2013-06-26 91 8f67da335d08bc0 Hai Li 2014-06-18 92 /* 8f67da335d08bc0 Hai Li 2014-06-18 93 * NOTE: if we can be guaranteed to be able to map buffer 8f67da335d08bc0 Hai Li 2014-06-18 94 * in panic (ie. lock-safe, etc) we could avoid pinning the 8f67da335d08bc0 Hai Li 2014-06-18 95 * buffer now: 8f67da335d08bc0 Hai Li 2014-06-18 96 */ 9fe041f6fdfedd9 Jordan Crouse 2018-11-07 97 ret = msm_gem_get_and_pin_iova(bo, priv->kms->aspace, &paddr); 8f67da335d08bc0 Hai Li 2014-06-18 98 if (ret) { 6a41da17e87dee2 Mamta Shukla 2018-10-20 99 DRM_DEV_ERROR(dev->dev, "failed to get buffer obj iova: %d\n", ret); 0d9509d2119528d Wei Yongjun 2014-08-14 100 goto fail_unlock; 8f67da335d08bc0 Hai Li 2014-06-18 101 } c8afe684c95cd17 Rob Clark 2013-06-26 102 778014f0c80815e Archit Taneja 2015-07-22 103 fbi = drm_fb_helper_alloc_fbi(helper); 778014f0c80815e Archit Taneja 2015-07-22 104 if (IS_ERR(fbi)) { 6a41da17e87dee2 Mamta Shukla 2018-10-20 105 DRM_DEV_ERROR(dev->dev, "failed to allocate fb info\n"); 778014f0c80815e Archit Taneja 2015-07-22 106 ret = PTR_ERR(fbi); c8afe684c95cd17 Rob Clark 2013-06-26 107 goto fail_unlock; c8afe684c95cd17 Rob Clark 2013-06-26 108 } c8afe684c95cd17 Rob Clark 2013-06-26 109 c8afe684c95cd17 Rob Clark 2013-06-26 110 DBG("fbi=%p, dev=%p", fbi, dev); c8afe684c95cd17 Rob Clark 2013-06-26 111 c8afe684c95cd17 Rob Clark 2013-06-26 112 fbdev->fb = fb; c8afe684c95cd17 Rob Clark 2013-06-26 113 helper->fb = fb; c8afe684c95cd17 Rob Clark 2013-06-26 114 c8afe684c95cd17 Rob Clark 2013-06-26 115 fbi->fbops = &msm_fb_ops; c8afe684c95cd17 Rob Clark 2013-06-26 116 d4eae71f815eeab Daniel Vetter 2019-03-26 117 drm_fb_helper_fill_info(fbi, helper, sizes); c8afe684c95cd17 Rob Clark 2013-06-26 118 c8afe684c95cd17 Rob Clark 2013-06-26 119 dev->mode_config.fb_base = paddr; c8afe684c95cd17 Rob Clark 2013-06-26 120 38958bab824a795 Rob Clark 2017-07-11 @121 fbi->screen_base = msm_gem_get_vaddr(bo); 69a834c28fb5144 Rob Clark 2016-05-24 122 if (IS_ERR(fbi->screen_base)) { 69a834c28fb5144 Rob Clark 2016-05-24 123 ret = PTR_ERR(fbi->screen_base); 69a834c28fb5144 Rob Clark 2016-05-24 124 goto fail_unlock; 69a834c28fb5144 Rob Clark 2016-05-24 125 } 38958bab824a795 Rob Clark 2017-07-11 126 fbi->screen_size = bo->size; c8afe684c95cd17 Rob Clark 2013-06-26 127 fbi->fix.smem_start = paddr; 38958bab824a795 Rob Clark 2017-07-11 128 fbi->fix.smem_len = bo->size; c8afe684c95cd17 Rob Clark 2013-06-26 129 c8afe684c95cd17 Rob Clark 2013-06-26 130 DBG("par=%p, %dx%d", fbi->par, fbi->var.xres, fbi->var.yres); c8afe684c95cd17 Rob Clark 2013-06-26 131 DBG("allocated %dx%d fb", fbdev->fb->width, fbdev->fb->height); c8afe684c95cd17 Rob Clark 2013-06-26 132 c8afe684c95cd17 Rob Clark 2013-06-26 133 mutex_unlock(&dev->struct_mutex); c8afe684c95cd17 Rob Clark 2013-06-26 134 c8afe684c95cd17 Rob Clark 2013-06-26 135 return 0; c8afe684c95cd17 Rob Clark 2013-06-26 136 c8afe684c95cd17 Rob Clark 2013-06-26 137 fail_unlock: c8afe684c95cd17 Rob Clark 2013-06-26 138 mutex_unlock(&dev->struct_mutex); c8afe684c95cd17 Rob Clark 2013-06-26 139 drm_framebuffer_remove(fb); c8afe684c95cd17 Rob Clark 2013-06-26 140 return ret; c8afe684c95cd17 Rob Clark 2013-06-26 141 } c8afe684c95cd17 Rob Clark 2013-06-26 142 :::::: The code at line 121 was first introduced by commit :::::: 38958bab824a7955138c356a16a3f72562fbcef1 drm/msm: don't track fbdev's gem object separately :::::: TO: Rob Clark <robdcl...@gmail.com> :::::: CC: Rob Clark <robdcl...@gmail.com> --- 0-DAY CI Kernel Test Service, Intel Corporation https://lists.01.org/hyperkitty/list/kbuild-...@lists.01.org
.config.gz
Description: application/gzip