[jirislaby:devel 53/73] drivers/video/console/vgacon.c:371:35: warning: comparison of distinct pointer types lacks a cast

From: kernel test robot
Date: Wed May 04 2022 - 11:12:14 EST


tree: https://git.kernel.org/pub/scm/linux/kernel/git/jirislaby/linux.git devel
head: fab642eca5e0ca41e656c8a0685cadf975b7ff88
commit: 9aaf33513f7cd36e3ac26196731192e7d7d92a99 [53/73] vt: rename and document struct uni_pagedir
config: alpha-defconfig (https://download.01.org/0day-ci/archive/20220504/202205042318.pbCvFqrn-lkp@xxxxxxxxx/config)
compiler: alpha-linux-gcc (GCC) 11.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://git.kernel.org/pub/scm/linux/kernel/git/jirislaby/linux.git/commit/?id=9aaf33513f7cd36e3ac26196731192e7d7d92a99
git remote add jirislaby https://git.kernel.org/pub/scm/linux/kernel/git/jirislaby/linux.git
git fetch --no-tags jirislaby devel
git checkout 9aaf33513f7cd36e3ac26196731192e7d7d92a99
# save the config file
mkdir build_dir && cp config build_dir/.config
COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-11.3.0 make.cross W=1 O=build_dir ARCH=alpha SHELL=/bin/bash drivers/video/console/

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

All warnings (new ones prefixed by >>):

drivers/video/console/vgacon.c: In function 'vgacon_init':
drivers/video/console/vgacon.c:370:11: error: assignment to 'struct uni_pagedir *' from incompatible pointer type 'struct uni_pagedict *' [-Werror=incompatible-pointer-types]
370 | p = *c->vc_uni_pagedir_loc;
| ^
>> drivers/video/console/vgacon.c:371:35: warning: comparison of distinct pointer types lacks a cast
371 | if (c->vc_uni_pagedir_loc != &vgacon_uni_pagedir) {
| ^~
drivers/video/console/vgacon.c:373:39: error: assignment to 'struct uni_pagedict **' from incompatible pointer type 'struct uni_pagedir **' [-Werror=incompatible-pointer-types]
373 | c->vc_uni_pagedir_loc = &vgacon_uni_pagedir;
| ^
cc1: some warnings being treated as errors


vim +371 drivers/video/console/vgacon.c

^1da177e4c3f41 Linus Torvalds 2005-04-16 342
^1da177e4c3f41 Linus Torvalds 2005-04-16 343 static void vgacon_init(struct vc_data *c, int init)
^1da177e4c3f41 Linus Torvalds 2005-04-16 344 {
e4bdab70dd07d8 Takashi Iwai 2014-05-13 345 struct uni_pagedir *p;
^1da177e4c3f41 Linus Torvalds 2005-04-16 346
50ec42edd9784f Antonino A. Daplas 2006-06-26 347 /*
3dfac26e2ef29f Maciej W. Rozycki 2021-10-26 348 * We cannot be loaded as a module, therefore init will be 1
3dfac26e2ef29f Maciej W. Rozycki 2021-10-26 349 * if we are the default console, however if we are a fallback
3dfac26e2ef29f Maciej W. Rozycki 2021-10-26 350 * console, for example if fbcon has failed registration, then
3dfac26e2ef29f Maciej W. Rozycki 2021-10-26 351 * init will be 0, so we need to make sure our boot parameters
3dfac26e2ef29f Maciej W. Rozycki 2021-10-26 352 * have been copied to the console structure for vgacon_resize
3dfac26e2ef29f Maciej W. Rozycki 2021-10-26 353 * ultimately called by vc_resize. Any subsequent calls to
3dfac26e2ef29f Maciej W. Rozycki 2021-10-26 354 * vgacon_init init will have init set to 0 too.
50ec42edd9784f Antonino A. Daplas 2006-06-26 355 */
^1da177e4c3f41 Linus Torvalds 2005-04-16 356 c->vc_can_do_color = vga_can_do_color;
3dfac26e2ef29f Maciej W. Rozycki 2021-10-26 357 c->vc_scan_lines = vga_scan_lines;
3dfac26e2ef29f Maciej W. Rozycki 2021-10-26 358 c->vc_font.height = c->vc_cell_height = vga_video_font_height;
50ec42edd9784f Antonino A. Daplas 2006-06-26 359
50ec42edd9784f Antonino A. Daplas 2006-06-26 360 /* set dimensions manually if init != 0 since vc_resize() will fail */
50ec42edd9784f Antonino A. Daplas 2006-06-26 361 if (init) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 362 c->vc_cols = vga_video_num_columns;
^1da177e4c3f41 Linus Torvalds 2005-04-16 363 c->vc_rows = vga_video_num_lines;
50ec42edd9784f Antonino A. Daplas 2006-06-26 364 } else
50ec42edd9784f Antonino A. Daplas 2006-06-26 365 vc_resize(c, vga_video_num_columns, vga_video_num_lines);
50ec42edd9784f Antonino A. Daplas 2006-06-26 366
^1da177e4c3f41 Linus Torvalds 2005-04-16 367 c->vc_complement_mask = 0x7700;
a40920b42ae232 Bill Nottingham 2005-05-01 368 if (vga_512_chars)
a40920b42ae232 Bill Nottingham 2005-05-01 369 c->vc_hi_font_mask = 0x0800;
^1da177e4c3f41 Linus Torvalds 2005-04-16 370 p = *c->vc_uni_pagedir_loc;
0f2893f0d1acff Takashi Iwai 2014-05-13 @371 if (c->vc_uni_pagedir_loc != &vgacon_uni_pagedir) {
^1da177e4c3f41 Linus Torvalds 2005-04-16 372 con_free_unimap(c);
0f2893f0d1acff Takashi Iwai 2014-05-13 373 c->vc_uni_pagedir_loc = &vgacon_uni_pagedir;
0f2893f0d1acff Takashi Iwai 2014-05-13 374 vgacon_refcount++;
0f2893f0d1acff Takashi Iwai 2014-05-13 375 }
0f2893f0d1acff Takashi Iwai 2014-05-13 376 if (!vgacon_uni_pagedir && p)
^1da177e4c3f41 Linus Torvalds 2005-04-16 377 con_set_default_unimap(c);
f6c06b6807ff92 Matthew Garrett 2009-11-13 378
b434a680a29424 Matthew Garrett 2009-11-13 379 /* Only set the default if the user didn't deliberately override it */
b434a680a29424 Matthew Garrett 2009-11-13 380 if (global_cursor_default == -1)
b434a680a29424 Matthew Garrett 2009-11-13 381 global_cursor_default =
b434a680a29424 Matthew Garrett 2009-11-13 382 !(screen_info.flags & VIDEO_FLAGS_NOCURSOR);
^1da177e4c3f41 Linus Torvalds 2005-04-16 383 }
^1da177e4c3f41 Linus Torvalds 2005-04-16 384

:::::: The code at line 371 was first introduced by commit
:::::: 0f2893f0d1acff4bb1677b60c0486adc0075cb99 vgacon: Fix & cleanup refcounting

:::::: TO: Takashi Iwai <tiwai@xxxxxxx>
:::::: CC: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx>

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