Page MenuHomeFreeBSD

i386: Fix build (of 'genassym.o')
ClosedPublic

Authored by olce on Jun 3 2026, 1:20 PM.
Tags
None
Referenced Files
Unknown Object (File)
Mon, Jul 27, 12:14 AM
Unknown Object (File)
Fri, Jul 24, 8:53 PM
Unknown Object (File)
Thu, Jul 23, 2:43 AM
Unknown Object (File)
Tue, Jul 21, 2:27 PM
Unknown Object (File)
Mon, Jul 20, 3:04 PM
Unknown Object (File)
Sat, Jul 18, 5:57 AM
Unknown Object (File)
Sat, Jul 11, 2:02 PM
Unknown Object (File)
Sun, Jul 5, 12:04 PM
Subscribers

Details

Summary

i386's genassym.c needs to define some assembly symbols holding the size
of NFS structures to support NFS_ROOT while booting with a nfs_diskless
structure. For this, it needs to include a few NFS headers, which
require definitions from <sys/mount.h> (fhandle_t, vfs_init_t), which
was removed by commit 72ab129799a2 ("x86: remove sys/mount.h from
genassym.c").

Since recently, <sys/mount.h> has been including <sys/vnode.h>, so needs
"vnode_if.h" to have been generated for the compilation of 'genassym.o'
not to fail. Make sure this is the case (for all architectures for
simplicity) by tweaking the rule for 'genassym.o' in
'sys/conf/kern.post.mk', leaving a comment there so that it can be
removed when i386 is dropped (or if the above-mentioned dependency is
broken).

Fixes: 72ab129799a2 ("x86: remove sys/mount.h from genassym.c")
Sponsored by: The FreeBSD Foundation

Diff Detail

Repository
rG FreeBSD src repository
Lint
Lint Skipped
Unit
Tests Skipped
Build Status
Buildable 73633
Build 70516: arc lint + arc unit