Re: buildkernel failure [in_prot.c:61:2: error: use of undeclared identifier 'RA_LOCKED']
Date: Sat, 14 Mar 2026 05:53:53 UTC
Thanks. That fixed it. Ian On March 14, 2026 00:06:09 Gleb Smirnoff <glebius@freebsd.org> wrote: > Ian, > > sorry for the breakage - my fault. I have just pushed fixups. > > On Fri, Mar 13, 2026 at 10:54:32PM -0400, Ian FREISLICH wrote: > I> Hi > I> > I> I get this build failure with the attached kernel config. > I> > I> /usr/src/sys/netinet/in_prot.c:61:2: error: call to undeclared function > I> 'rw_assert'; ISO C99 and later do not support implicit function > I> declarations [-Werror,-Wimplicit-function-declaration] > I> 61 | INP_LOCK_ASSERT(inp); > I> | ^ > I> /usr/src/sys/netinet/in_pcb.h:538:30: note: expanded from macro > I> 'INP_LOCK_ASSERT' > I> 538 | #define INP_LOCK_ASSERT(inp) rw_assert(&(inp)->inp_lock, > I> RA_LOCKED) > I> | ^ > I> /usr/src/sys/netinet/in_prot.c:61:2: error: use of undeclared identifier > I> 'RA_LOCKED' > I> /usr/src/sys/netinet/in_pcb.h:538:58: note: expanded from macro > I> 'INP_LOCK_ASSERT' > I> 538 | #define INP_LOCK_ASSERT(inp) rw_assert(&(inp)->inp_lock, > I> RA_LOCKED) > I> | ^ > I> 2 errors generated. > I> *** Error code 1 > I> > > I> cpu HAMMER > I> ident ROUTER > I> > I> makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols > I> > I> options SCHED_ULE # ULE scheduler > I> options NUMA # Non-Uniform Memory Architecture support > I> options PREEMPTION # Enable kernel thread preemption > I> > I> options INET # IPv6 communications protocols > I> options INET6 # IPv6 communications protocols > I> options IPSEC > I> options IPSEC_OFFLOAD # Inline ipsec offload infra > I> options ROUTE_MPATH # Multipath routing support > I> options FIB_ALGO # Modular fib lookups > I> options TCP_OFFLOAD # TCP offload > I> options TCP_BLACKBOX # Enhanced TCP event logging > I> options TCP_HHOOK # hhook(9) framework for TCP > I> options TCP_RFC7413 # TCP Fast Open > I> options SCTP_SUPPORT # Allow kldload of SCTP > I> options KERN_TLS # TLS transmit & receive offload > I> options MAC > I> options MAC_NTPD > I> options MAC_PORTACL > I> > I> options FFS # Berkeley Fast Filesystem > I> options SOFTUPDATES # Enable FFS soft updates support > I> options UFS_ACL # Support for access control lists > I> options UFS_DIRHASH # Improve performance on big directories > I> options UFS_GJOURNAL # Enable gjournal-based UFS journaling > I> options ZFS > I> options ZSTDIO > I> options PROCFS # Process filesystem (requires PSEUDOFS) > I> options PSEUDOFS # Pseudo-filesystem framework > I> options TMPFS # Efficient memory filesystem > I> options GEOM_LABEL # Provides labelization > I> options GEOM_PART_GPT > I> options EFIRT # EFI Runtime Services support > I> options COMPAT_FREEBSD32 # Compatible with i386 binaries > I> options COMPAT_FREEBSD4 # Compatible with FreeBSD4 > I> options COMPAT_FREEBSD5 # Compatible with FreeBSD5 > I> options COMPAT_FREEBSD6 # Compatible with FreeBSD6 > I> options COMPAT_FREEBSD7 # Compatible with FreeBSD7 > I> options COMPAT_FREEBSD9 # Compatible with FreeBSD9 > I> options COMPAT_FREEBSD10 # Compatible with FreeBSD10 > I> options COMPAT_FREEBSD11 # Compatible with FreeBSD11 > I> options COMPAT_FREEBSD12 # Compatible with FreeBSD12 > I> options COMPAT_FREEBSD13 # Compatible with FreeBSD13 > I> options COMPAT_FREEBSD14 # Compatible with FreeBSD14 > I> #options COMPAT_FREEBSD15 # Compatible with FreeBSD15 > I> options KTRACE # ktrace(1) support > I> options STACK # stack(9) support > I> options SYSVSHM # SYSV-style shared memory > I> options SYSVMSG # SYSV-style message queues > I> options SYSVSEM # SYSV-style semaphores > I> > I> options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions > I> options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed. > I> options KBD_INSTALL_CDEV # install a CDEV entry in /dev > I> options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4) > I> options INCLUDE_CONFIG_FILE # Include this file in kernel > I> > I> # Debugging support. Always need this: > I> options KDB > I> options KDB_UNATTENDED > I> options DDB > I> options GDB > I> options KDB_TRACE > I> options ALT_BREAK_TO_DEBUGGER > I> > I> # Kernel dump features. > I> options EKCD # Support for encrypted kernel dumps > I> options GZIO # gzip-compressed kernel and user dumps > I> options ZSTDIO # zstd-compressed kernel and user dumps > I> options DEBUGNET # debugnet networking > I> options NETDUMP # netdump(4) client support > I> options NETGDB # netgdb(4) client support > I> > I> device pf > I> device pflog > I> #device pfsync > I> > I> # Make an SMP-capable kernel by default > I> options SMP # Symmetric MultiProcessor Kernel > I> device cpufreq > I> > I> # Bus support. > I> device acpi > I> device acpi_wmi > I> device smbios > I> device smbus > I> device ichsmb > I> device iicbus > I> device ig4 > I> options IOMMU > I> device pci > I> options PCI_HP # PCI-Express native HotPlug > I> options PCI_IOV # PCI SR-IOV support > I> > I> > I> # ATA controllers > I> device ahci # AHCI-compatible SATA controllers > I> device scbus # SCSI bus (required for ATA/SCSI) > I> device ch # SCSI media changers > I> device da # Direct Access (disks) > I> device sa # Sequential Access (tape etc) > I> device cd # CD > I> device pass # Passthrough device (direct ATA/SCSI access) > I> device ses # Enclosure Services (SES and SAF-TE) > I> > I> # NVM Express (NVMe) support > I> device nvme # base NVMe driver > I> device nvd # expose NVMe namespaces as disks, depends on nvme > I> > I> # atkbdc0 controls both the keyboard and the PS/2 mouse > I> device atkbdc # AT keyboard controller > I> device atkbd # AT keyboard > I> device kbdmux # keyboard multiplexer > I> > I> # syscons is the legacy console driver, resembling an SCO console > I> #device vga # VGA video card driver > I> #device splash # Splash screen and screen saver support > I> #device sc > I> #options SC_PIXEL_MODE # add support for the raster text mode > I> > I> # vt is the default video console driver > I> device vt > I> device vt_vga > I> device vt_efifb > I> device vt_vbefb > I> > I> device agp # support several AGP chipsets > I> > I> options PPS_SYNC > I> device uart # Generic UART driver > I> > I> device superio > I> device gpio > I> device gpiopps > I> > I> # PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure > I> device iflib > I> device igc # Intel I225 2.5G Ethernet > I> device ix # Intel PRO/10GbE PCIE PF Ethernet > I> > I> # Pseudo devices. > I> device crypto # core crypto support > I> device cryptodev > I> device aesni # AES-NI OpenCrypto module > I> device ossl > I> device loop # Network loopback > I> device rdrand_rng # Intel Bull Mountain RNG > I> device ether # Ethernet support > I> device vlan # 802.1Q VLAN support > I> device tuntap # Packet tunnel. > I> device md # Memory "disks" > I> device gif # IPv6 and IPv4 tunneling > I> device firmware # firmware assist module > I> device xz # lzma decompression > I> > I> options EVDEV_SUPPORT > I> device evdev > I> device uinput > I> > I> # The `bpf' device enables the Berkeley Packet Filter. > I> # Be aware of the administrative consequences of enabling this! > I> # Note that 'bpf' is required for DHCP. > I> device bpf # Berkeley packet filter > I> > I> # USB support > I> options USB_DEBUG # enable debug msgs > I> device uhci # UHCI PCI->USB interface > I> device ohci # OHCI PCI->USB interface > I> device ehci # EHCI PCI->USB interface (USB 2.0) > I> device xhci # XHCI PCI->USB interface (USB 3.0) > I> device usb # USB Bus (required) > I> device usbhid # USB HID Transport > I> device hkbd # HID Keyboard > I> device ukbd # USB Keyboard > I> device umass # Disks/Mass storage - Requires scbus and da > I> > I> # Sound support > I> device sound # Generic sound driver (required) > I> device snd_hda # Intel High Definition Audio > I> > I> # Netmap provides direct access to TX/RX rings on supported NICs > I> device netmap # netmap(4) support > I> > I> device hid # Generic HID support > I> device hidbus # Generic HID Bus > I> > I> # EFI devices > I> device efidev # EFI pseudo-device > I> device efirtc # EFI RTC > > > -- > Gleb Smirnoff