Re: [drm-drm-misc:drm-misc-next 1/2] hppa-linux-ld: undefined reference to `screen_info'

From: Javier Martinez Canillas
Date: Wed Jul 21 2021 - 10:45:19 EST


Thanks for the report.

On 7/21/21 3:13 PM, kernel test robot wrote:
> tree: git://anongit.freedesktop.org/drm/drm-misc drm-misc-next
> head: 8633ef82f101c040427b57d4df7b706261420b94
> commit: d391c58271072d0b0fad93c82018d495b2633448 [1/2] drivers/firmware: move x86 Generic System Framebuffers support
> config: parisc-randconfig-r021-20210720 (attached as .config)
> compiler: hppa-linux-gcc (GCC) 10.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
> git remote add drm-drm-misc git://anongit.freedesktop.org/drm/drm-misc
> git fetch --no-tags drm-drm-misc drm-misc-next
> git checkout d391c58271072d0b0fad93c82018d495b2633448
> # save the attached .config to linux build tree
> mkdir build_dir
> COMPILER_INSTALL_PATH=$HOME/0day COMPILER=gcc-10.3.0 make.cross O=build_dir ARCH=parisc SHELL=/bin/bash
>
> If you fix the issue, kindly add following tag as appropriate
> Reported-by: kernel test robot <lkp@xxxxxxxxx>
>
> All errors (new ones prefixed by >>):
>
> hppa-linux-ld: drivers/firmware/sysfb.o: in function `sysfb_init':
> (.init.text+0x24): undefined reference to `screen_info'
>>> hppa-linux-ld: (.init.text+0x28): undefined reference to `screen_info'
>

Apparently not all architectures define a screen_info, this was reported for
parisc but it's also true for other arches: arc, m68k, microblaze, openrisc
and s390.

The Kconfig symbol is built when COMPILE_TEST is enabled, but that shouldn't
be done for this reason and instead only built for the arches that need it:

config SYSFB
bool
default y
depends on X86 || ARM || ARM64 || RISCV || COMPILE_TEST

I'll post a patch later.

Best regards,
--
Javier Martinez Canillas
Linux Engineering
Red Hat