[drm-misc:drm-misc-next 2/18] drivers/gpu/drm/tiny/simpledrm.c:514:32: sparse: sparse: incorrect type in initializer (different address spaces)

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



tree:   git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
head:   3bd86801c84f66b4abedde4078e5237937b7576b
commit: 71bf55872cbe035820a87b2aa5fc1dc60678abfa [2/18] drm/format-helper: Provide drm_fb_blit()
config: x86_64-randconfig-s022 (https://download.01.org/0day-ci/archive/20220814/202208140534.AuJeaYA5-lkp@xxxxxxxxx/config)
compiler: gcc-11 (Debian 11.3.0-3) 11.3.0
reproduce:
        # apt-get install sparse
        # sparse version: v0.6.4-39-gce1a6720-dirty
        git remote add drm-misc git://anongit.freedesktop.org/drm/drm-misc
        git fetch --no-tags drm-misc drm-misc-next
        git checkout 71bf55872cbe035820a87b2aa5fc1dc60678abfa
        # save the config file
        mkdir build_dir && cp config build_dir/.config
        make W=1 C=1 CF='-fdiagnostic-prefix -D__CHECK_ENDIAN__' O=build_dir ARCH=x86_64 SHELL=/bin/bash drivers/gpu/drm/tiny/

If you fix the issue, kindly add following tag where applicable
Reported-by: kernel test robot <lkp@xxxxxxxxx>

sparse warnings: (new ones prefixed by >>)
>> drivers/gpu/drm/tiny/simpledrm.c:514:32: sparse: sparse: incorrect type in initializer (different address spaces) @@     expected void *vaddr @@     got void [noderef] __iomem *screen_base @@
   drivers/gpu/drm/tiny/simpledrm.c:514:32: sparse:     expected void *vaddr
   drivers/gpu/drm/tiny/simpledrm.c:514:32: sparse:     got void [noderef] __iomem *screen_base

vim +514 drivers/gpu/drm/tiny/simpledrm.c

   504	
   505	static void simpledrm_primary_plane_helper_atomic_update(struct drm_plane *plane,
   506								 struct drm_atomic_state *old_state)
   507	{
   508		struct drm_plane_state *plane_state = plane->state;
   509		struct drm_plane_state *old_plane_state = drm_atomic_get_old_plane_state(old_state, plane);
   510		struct drm_shadow_plane_state *shadow_plane_state = to_drm_shadow_plane_state(plane_state);
   511		struct drm_framebuffer *fb = plane_state->fb;
   512		struct drm_device *dev = plane->dev;
   513		struct simpledrm_device *sdev = simpledrm_device_of_dev(dev);
 > 514		struct iosys_map dst = IOSYS_MAP_INIT_VADDR(sdev->screen_base);
   515		struct drm_rect src_clip, dst_clip;
   516		int idx;
   517	
   518		if (!fb)
   519			return;
   520	
   521		if (!drm_atomic_helper_damage_merged(old_plane_state, plane_state, &src_clip))
   522			return;
   523	
   524		dst_clip = plane_state->dst;
   525		if (!drm_rect_intersect(&dst_clip, &src_clip))
   526			return;
   527	
   528		if (!drm_dev_enter(dev, &idx))
   529			return;
   530	
   531		iosys_map_incr(&dst, drm_fb_clip_offset(sdev->pitch, sdev->format, &dst_clip));
   532		drm_fb_blit(&dst, &sdev->pitch, sdev->format->format, shadow_plane_state->data, fb,
   533			    &src_clip);
   534	
   535		drm_dev_exit(idx);
   536	}
   537	

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



[Index of Archives]     [Linux DRI Users]     [Linux Intel Graphics]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]     [XFree86]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Linux Kernel]     [Linux SCSI]     [XFree86]
  Powered by Linux