tree:
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git master
head: 9123e3a74ec7b934a4a099e98af6a61c2f80bbf5
commit: 670d0a4b10704667765f7d18f7592993d02783aa sparse: use identifiers to define address
spaces
date: 8 weeks ago
config: m68k-randconfig-s031-20200817 (attached as .config)
compiler: m68k-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-180-g49f7e13a-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=m68k
If you fix the issue, kindly add following tag as appropriate
Reported-by: kernel test robot <lkp(a)intel.com>
sparse warnings: (new ones prefixed by >>)
> drivers/video/fbdev/q40fb.c:105:27: sparse: sparse: incorrect
type in assignment (different address spaces) @@ expected char [noderef] __iomem
*screen_base @@ got char * @@
> drivers/video/fbdev/q40fb.c:105:27: sparse: expected char [noderef] __iomem
*screen_base
drivers/video/fbdev/q40fb.c:105:27: sparse: got char *
drivers/video/fbdev/q40fb.c:136:12: sparse: sparse: symbol 'q40fb_init' was not
declared. Should it be static?
--
drivers/macintosh/via-cuda.c:520:24: sparse: sparse: Using plain integer as NULL
pointer
> drivers/macintosh/via-cuda.c:213:9: sparse: sparse: incorrect
type in assignment (different address spaces) @@ expected unsigned char volatile
[noderef] __iomem *static [toplevel] via @@ got unsigned char volatile [usertype]
*extern [addressable] [toplevel] via1 @@
> drivers/macintosh/via-cuda.c:213:9: sparse: expected unsigned char volatile
[noderef] __iomem *static [toplevel] via
drivers/macintosh/via-cuda.c:213:9:
sparse: got unsigned char volatile [usertype] *extern [addressable] [toplevel] via1
#
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit...
git remote add linus
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
git fetch --no-tags linus master
git checkout 670d0a4b10704667765f7d18f7592993d02783aa
vim +105 drivers/video/fbdev/q40fb.c
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 84
48c68c4f1b5424 drivers/video/q40fb.c Greg Kroah-Hartman 2012-12-21 85 static int
q40fb_probe(struct platform_device *dev)
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 86 {
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 87 struct fb_info
*info;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 88
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 89 if
(!MACH_IS_Q40)
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 90 return -ENXIO;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 91
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 92 /* mapped in
q40/config.c */
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 93
q40fb_fix.smem_start = Q40_PHYS_SCREEN_ADDR;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 94
ce303c076baad1 drivers/video/q40fb.c Antonino A. Daplas 2007-07-17 95 info =
framebuffer_alloc(sizeof(u32) * 16, &dev->dev);
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 96 if (!info)
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 97 return
-ENOMEM;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 98
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 99 info->var =
q40fb_var;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 100 info->fix =
q40fb_fix;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 101 info->fbops =
&q40fb_ops;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 102 info->flags =
FBINFO_DEFAULT; /* not as module for now */
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 103
info->pseudo_palette = info->par;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 104 info->par =
NULL;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 @105
info->screen_base = (char *) q40fb_fix.smem_start;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 106
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 107 if
(fb_alloc_cmap(&info->cmap, 256, 0) < 0) {
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 108
framebuffer_release(info);
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 109 return
-ENOMEM;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 110 }
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 111
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 112 master_outb(3,
DISPLAY_CONTROL_REG);
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 113
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 114 if
(register_framebuffer(info) < 0) {
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 115 printk(KERN_ERR
"Unable to register Q40 frame buffer\n");
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 116
fb_dealloc_cmap(&info->cmap);
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 117
framebuffer_release(info);
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 118 return
-EINVAL;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 119 }
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 120
31b6780c15a4e3 drivers/video/q40fb.c Joe Perches 2013-09-19 121 fb_info(info,
"Q40 frame buffer alive and kicking !\n");
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 122 return 0;
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 123 }
^1da177e4c3f41 drivers/video/q40fb.c Linus Torvalds 2005-04-16 124
:::::: The code at line 105 was first introduced by commit
:::::: 1da177e4c3f41524e886b7f1b8a0c1fc7321cac2 Linux-2.6.12-rc2
:::::: TO: Linus Torvalds <torvalds(a)ppc970.osdl.org>
:::::: CC: Linus Torvalds <torvalds(a)ppc970.osdl.org>
---
0-DAY CI Kernel Test Service, Intel Corporation
https://lists.01.org/hyperkitty/list/kbuild-all@lists.01.org