Re: buildkernel failure [in_prot.c:61:2: error: use of undeclared identifier 'RA_LOCKED']

From: Ian Freislich <ianfreislich_at_gmail.com>
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