NetBSD-Bugs archive

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

kern/59568: Kernel build failure with MICROVM config since import of viogpu



>Number:         59568
>Category:       kern
>Synopsis:       Kernel build failure with MICROVM config since import of viogpu
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    kern-bug-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sun Aug 03 13:40:00 +0000 2025
>Originator:     Matthias Petermann
>Release:        NetBSD 11_BETA
>Organization:
>Environment:
NetBSD  11.0_BETA NetBSD 11.0_BETA (MICROVMMD) #7: Sun Aug  3 12:45:04 CEST 2025  mpeterma%x230.lan@localhost:/u/NetBSD/src/sys/arch/amd64/compile/obj/MICROVMMD amd64
>Description:
During the last couple of days, NetBSD 11 was branched and trunk tracks now 11.99.x. 

Just before this, the viogpu driver was imported. The driver depends wsdisplay, hence breaks build configs where this is not present. I observed this with the MICROVM profile on amd64. In this case, the build stops with:

```
#      link  MICROVM/netbsd
/u/NetBSD/src/obj/tooldir/bin/x86_64--netbsd-ld -Map netbsd.map --cref -T netbsd.ldscript -Ttext 0xffffffff80200000 -e start -z max-page-size=0x200000 -z noseparate-code -X -o netbsd ${SYSTEM_OBJ:[@]:Nswapnetbsd.o} ${EXTRA_OBJ} vers.o swapnetbsd.o
/u/NetBSD/src/obj/tooldir/bin/x86_64--netbsd-ld: viogpu.o: in function `viogpu_init_screen':
viogpu.c:(.text+0x290): undefined reference to `rasops_init'
/u/NetBSD/src/obj/tooldir/bin/x86_64--netbsd-ld: viogpu.c:(.text+0x2c6): undefined reference to `rasops_reconfig'
/u/NetBSD/src/obj/tooldir/bin/x86_64--netbsd-ld: viogpu.o: in function `viogpu_attach_postintr':
viogpu.c:(.text+0x15f8): undefined reference to `wsemuldisplaydevprint'
/u/NetBSD/src/obj/tooldir/bin/x86_64--netbsd-ld: viogpu.c:(.text+0x18ca): undefined reference to `wsdisplay_cnattach'
/u/NetBSD/src/obj/tooldir/bin/x86_64--netbsd-ld: viogpu.o: in function `viogpu_wsioctl':
viogpu.c:(.text+0x5af): undefined reference to `wsdisplayio_get_fbinfo'

*** Failed target: netbsd
*** In directory: /u/NetBSD/src/sys/arch/amd64/compile/obj/MICROVM
*** Failed commands:
	${SYSTEM_LD_HEAD}
	=> @rm -f netbsd 
	${SYSTEM_LD}
```
>How-To-Repeat:
Build a custom kernel at current or 11_BETA branch (code from 20250803):

```
./build.sh -u -U -j2 -T obj/tooldir -m amd64 kernel=MICROVM
```
>Fix:
Adding the following to the MICROVM profile:

```
wsdisplay*	at wsemuldisplaydev?
```

...fixes the problem for me. Anyway, folks in IRC recommended to better do a in depth review of the dependencies causing the issue.



Home | Main Index | Thread Index | Old Index