NetBSD Problem Report #59568
From www@netbsd.org Sun Aug 3 13:35:56 2025
Return-Path: <www@netbsd.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
(using TLSv1.3 with cipher TLS_AES_256_GCM_SHA384 (256/256 bits)
key-exchange X25519 server-signature RSA-PSS (2048 bits)
client-signature RSA-PSS (2048 bits))
(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
by mollari.NetBSD.org (Postfix) with ESMTPS id D506F1A923A
for <gnats-bugs@gnats.NetBSD.org>; Sun, 3 Aug 2025 13:35:56 +0000 (UTC)
Message-Id: <20250803133555.3F0271A923C@mollari.NetBSD.org>
Date: Sun, 3 Aug 2025 13:35:55 +0000 (UTC)
From: matthias@d2ux.net
Reply-To: matthias@d2ux.net
To: gnats-bugs@NetBSD.org
Subject: Kernel build failure with MICROVM config since import of viogpu
X-Send-Pr-Version: www-1.0
>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
>Last-Modified: Mon Aug 25 16:05:01 +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:/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.
>Audit-Trail:
From: Martin Husemann <martin@duskware.de>
To: gnats-bugs@netbsd.org
Cc:
Subject: Re: kern/59568: Kernel build failure with MICROVM config since
import of viogpu
Date: Sun, 3 Aug 2025 15:46:04 +0200
I have no idea what scope the MICROVM config is supposed to have so can't
fix this.
The solution is either
- add "no viogpu*" to MICROVM
or
- add "wsdisplay* at wsemuldisplaydev?" to MICROVM
Martin
From: "Matthias Petermann" <matthias@d2ux.net>
To: <gnats-bugs@netbsd.org>, <kern-bug-people@netbsd.org>,
<gnats-admin@netbsd.org>, <netbsd-bugs@netbsd.org>
Cc:
Subject: Re: kern/59568: Kernel build failure with MICROVM config since
import of viogpu
Date: Sun, 03 Aug 2025 17:46:47 +0200
Hello Martin,
On Sun Aug 3, 2025 at 3:50 PM CEST, Martin Husemann via gnats wrote:
> I have no idea what scope the MICROVM config is supposed to have so can'=
t
> fix this.
> =20
> The solution is either
> =20
> - add "no viogpu*" to MICROVM
> =20
> or
> =20
> - add "wsdisplay* at wsemuldisplaydev?" to MICROVM
> =20
> =20
> Martin
> =20
With this in mind, I guess adding "no viogpu*" to MICROVM is the
clean solution. I just tested this -> works.
According to [1] Qemus machine type microvm doesn't
provide a graphical console, hence guest support for this adds no
value. Maybe someone with more in depth know how could this confirm?
Thanks,=20
Matthias
[1] https://www.qemu.org/docs/master/system/i386/microvm.html
--=20
Think clearly. Build simply. Own your tools.
Resist complexity. Respect users. Stay sovereign.
Matthias Petermann
E-Mail: matthias@d2ux.net
From: "Emile iMil Heitor" <imil@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/59568 CVS commit: src/sys/arch/x86/conf
Date: Thu, 21 Aug 2025 06:45:06 +0000
Module Name: src
Committed By: imil
Date: Thu Aug 21 06:45:06 UTC 2025
Modified Files:
src/sys/arch/x86/conf: MICROVM.common
Log Message:
PR 59568: Disable viogpu in MICROVM kernel configuration as it is not
supported for now.
To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.4 src/sys/arch/x86/conf/MICROVM.common
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
From: Christoph Badura <bad@bsd.de>
To: gnats-bugs@netbsd.org
Cc:
Subject: Re: kern/59568: Kernel build failure with MICROVM config since
import of viogpu
Date: Thu, 21 Aug 2025 13:08:00 +0200
Note that Isaki-san reported the same failure for virt68k:
https://mail-index.netbsd.org/current-users/2025/08/19/msg046746.html
We should be looking for a more generic solution. Perhaps we should
enable viogpu only if the prerequisite options are enabled? Not sure what
attributes would be the correct ones. Perhaps just "wsdisplay" is enough?
--chris
From: "Martin Husemann" <martin@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc:
Subject: PR/59568 CVS commit: [netbsd-11] src/sys/arch/x86/conf
Date: Mon, 25 Aug 2025 16:01:38 +0000
Module Name: src
Committed By: martin
Date: Mon Aug 25 16:01:38 UTC 2025
Modified Files:
src/sys/arch/x86/conf [netbsd-11]: MICROVM.common
Log Message:
Pull up following revision(s) (requested by imil in ticket #13):
sys/arch/x86/conf/MICROVM.common: revision 1.4
PR 59568: Disable viogpu in MICROVM kernel configuration as it is not
supported for now.
To generate a diff of this commit:
cvs rdiff -u -r1.3 -r1.3.2.1 src/sys/arch/x86/conf/MICROVM.common
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
(Contact us)
$NetBSD: query-full-pr,v 1.47 2022/09/11 19:34:41 kim Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2025
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.