[PATCH 5/5] drm/nouveau: Add drm_panic support for nv50+

kernel test robot lkp at intel.com
Fri May 24 10:53:13 UTC 2024


Hi Jocelyn,

kernel test robot noticed the following build warnings:

[auto build test WARNING on 484436ec5c2bffe8f346a09ae1cbc4cbf5e50005]

url:    https://github.com/intel-lab-lkp/linux/commits/Jocelyn-Falempe/drm-panic-Add-ABGR2101010-support/20240523-211335
base:   484436ec5c2bffe8f346a09ae1cbc4cbf5e50005
patch link:    https://lore.kernel.org/r/20240523130955.428233-6-jfalempe%40redhat.com
patch subject: [PATCH 5/5] drm/nouveau: Add drm_panic support for nv50+
config: x86_64-randconfig-r113-20240524 (https://download.01.org/0day-ci/archive/20240524/202405241832.ETpErbon-lkp@intel.com/config)
compiler: clang version 18.1.5 (https://github.com/llvm/llvm-project 617a15a9eac96088ae5e9134248d8236e34b91b1)
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20240524/202405241832.ETpErbon-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/202405241832.ETpErbon-lkp@intel.com/

sparse warnings: (new ones prefixed by >>)
>> drivers/gpu/drm/nouveau/dispnv50/wndw.c:675:66: sparse: sparse: incorrect type in argument 2 (different address spaces) @@     expected void [noderef] __iomem *vaddr_iomem @@     got void *virtual @@
   drivers/gpu/drm/nouveau/dispnv50/wndw.c:675:66: sparse:     expected void [noderef] __iomem *vaddr_iomem
   drivers/gpu/drm/nouveau/dispnv50/wndw.c:675:66: sparse:     got void *virtual
   drivers/gpu/drm/nouveau/dispnv50/wndw.c: note: in included file (through include/linux/timer.h, include/linux/workqueue.h, drivers/gpu/drm/nouveau/dispnv50/disp.h, ...):
   include/linux/list.h:83:21: sparse: sparse: self-comparison always evaluates to true

vim +675 drivers/gpu/drm/nouveau/dispnv50/wndw.c

   652	
   653	static int
   654	nv50_wndw_get_scanout_buffer(struct drm_plane *plane, struct drm_scanout_buffer *sb)
   655	{
   656		struct drm_framebuffer *fb;
   657		struct nouveau_bo *nvbo;
   658	
   659		if (!plane->state || !plane->state->fb)
   660			return -EINVAL;
   661	
   662		fb = plane->state->fb;
   663		nvbo = nouveau_gem_object(fb->obj[0]);
   664	
   665		/* Don't support compressed format, or multiplane yet */
   666		if (nvbo->comp || fb->format->num_planes != 1)
   667			return -EOPNOTSUPP;
   668	
   669		if (nouveau_bo_map(nvbo)) {
   670			pr_warn("nouveau bo map failed, panic won't be displayed\n");
   671			return -ENOMEM;
   672		}
   673	
   674		if (nvbo->kmap.bo_kmap_type & TTM_BO_MAP_IOMEM_MASK)
 > 675			iosys_map_set_vaddr_iomem(&sb->map[0], nvbo->kmap.virtual);
   676		else
   677			iosys_map_set_vaddr(&sb->map[0], nvbo->kmap.virtual);
   678	
   679		sb->height = fb->height;
   680		sb->width = fb->width;
   681		sb->pitch[0] = fb->pitches[0];
   682		sb->format = fb->format;
   683	
   684		/* If tiling is enabled, use the set_pixel() to display correctly */
   685		if (fb->modifier & 0xf) {
   686			sb->private = (void *) fb;
   687			sb->set_pixel = nv50_set_pixel;
   688		}
   689		return 0;
   690	}
   691	

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


More information about the dri-devel mailing list