aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLexi Winter <ivy@FreeBSD.org>2025-11-30 21:52:30 +0000
committerLexi Winter <ivy@FreeBSD.org>2025-11-30 21:52:30 +0000
commit7cbc2eafc0b965d65ed8de53bf7d23b9ff3349ee (patch)
treea7f86ec4834de3f09eafad26820e844c6427d431
parent14e8616a3df92f494e30f49648a34d8f2d0f6249 (diff)
amd64: Add ROSE and LF-BHYVE kernel configs
-rw-r--r--sys/amd64/conf/LF-BHYVE76
-rw-r--r--sys/amd64/conf/ROSE155
2 files changed, 231 insertions, 0 deletions
diff --git a/sys/amd64/conf/LF-BHYVE b/sys/amd64/conf/LF-BHYVE
new file mode 100644
index 000000000000..8b529aec140e
--- /dev/null
+++ b/sys/amd64/conf/LF-BHYVE
@@ -0,0 +1,76 @@
+# LF kernel for bhyve
+# This is for small VMs, so it intentionally omits a lot of features.
+
+cpu HAMMER
+ident LF-BHYVE
+
+makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
+makeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support
+makeoptions MODULES_OVERRIDE="if_wg dummynet filemon pf pflog if_epair"
+
+options SCHED_ULE # ULE scheduler
+options PREEMPTION # Enable kernel thread preemption
+options INET # InterNETworking
+options INET6 # IPv6 communications protocols
+options COMPAT_FREEBSD11 # Compatible with FreeBSD11
+options COMPAT_FREEBSD12 # Compatible with FreeBSD12
+options COMPAT_FREEBSD13 # Compatible with FreeBSD13
+options COMPAT_FREEBSD14 # Compatible with FreeBSD14
+options KTRACE # ktrace(1) support
+options STACK # stack(9) support
+options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
+options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed.
+options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4)
+options CAPABILITY_MODE # Capsicum capability mode
+options CAPABILITIES # Capsicum capabilities
+options MAC # TrustedBSD MAC Framework
+options DDB_CTF # Kernel ELF linker loads CTF data
+options INCLUDE_CONFIG_FILE # Include this file in kernel
+
+options KDB # Enable kernel debugger support.
+options KDB_TRACE # Print a stack trace for a panic.
+
+options SMP # Symmetric MultiProcessor Kernel
+options SYSVSHM # SYSV-style shared memory
+options SYSVMSG # SYSV-style message queues
+options SYSVSEM # SYSV-style semaphores
+
+options GEOM_LABEL
+options MSDOSFS
+options FFS
+options SOFTUPDATES
+options UFS_ACL
+options UFS_DIRHASH
+
+options KGSSAPI
+options NFSCL
+options NFSD
+
+device acpi
+device pci
+device uart
+device rdrand_rng
+device efirt
+device efirtc
+device crypto
+device cryptodev
+device aesni
+
+options P9FS
+device virtio
+device virtio_pci
+device virtio_p9fs
+
+device loop
+device ether
+device bpf
+device vtnet
+
+options ACCEPT_FILTER_DATA
+options ACCEPT_FILTER_DNS
+options ACCEPT_FILTER_HTTP
+options ACCEPT_FILTER_TLS
+
+device nvme
+device nda
+device scbus
diff --git a/sys/amd64/conf/ROSE b/sys/amd64/conf/ROSE
new file mode 100644
index 000000000000..f7de21ead64e
--- /dev/null
+++ b/sys/amd64/conf/ROSE
@@ -0,0 +1,155 @@
+cpu HAMMER
+ident ROSE
+
+makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
+makeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support
+makeoptions MODULES_OVERRIDE="vmm"
+
+options SCHED_ULE # ULE scheduler
+options PREEMPTION # Enable kernel thread preemption
+options EXTERR_STRINGS
+options EFIRT # EFI Runtime Services support
+options COMPAT_FREEBSD32 # Compatible with i386 binaries
+options COMPAT_FREEBSD4 # Compatible with FreeBSD4
+options COMPAT_FREEBSD5 # Compatible with FreeBSD5
+options COMPAT_FREEBSD6 # Compatible with FreeBSD6
+options COMPAT_FREEBSD7 # Compatible with FreeBSD7
+options COMPAT_FREEBSD9 # Compatible with FreeBSD9
+options COMPAT_FREEBSD10 # Compatible with FreeBSD10
+options COMPAT_FREEBSD11 # Compatible with FreeBSD11
+options COMPAT_FREEBSD12 # Compatible with FreeBSD12
+options COMPAT_FREEBSD13 # Compatible with FreeBSD13
+options COMPAT_FREEBSD14 # Compatible with FreeBSD14
+options SCSI_DELAY=5000 # Delay (in ms) before probing SCSI
+options KTRACE # ktrace(1) support
+options STACK # stack(9) support
+options SYSVSHM # SYSV-style shared memory
+options SYSVMSG # SYSV-style message queues
+options SYSVSEM # SYSV-style semaphores
+options _KPOSIX_PRIORITY_SCHEDULING # POSIX P1003_1B real-time extensions
+options PRINTF_BUFR_SIZE=128 # Prevent printf output being interspersed.
+options HWPMC_HOOKS # Necessary kernel hooks for hwpmc(4)
+options CAPABILITY_MODE # Capsicum capability mode
+options CAPABILITIES # Capsicum capabilities
+options MAC # TrustedBSD MAC Framework
+options KDTRACE_FRAME # Ensure frames are compiled in
+options KDTRACE_HOOKS # Kernel DTrace hooks
+options DDB_CTF # Kernel ELF linker loads CTF data
+options INCLUDE_CONFIG_FILE # Include this file in kernel
+options RACCT # Resource accounting framework
+options RACCT_DEFAULT_TO_DISABLED # Set kern.racct.enable=0 by default
+options RCTL # Resource limits
+# Debugging support. Always need this:
+options KDB # Enable kernel debugger support.
+options KDB_TRACE # Print a stack trace for a panic.
+include "std.nodebug"
+
+# Kernel dump features.
+options GZIO # gzip-compressed kernel and user dumps
+options ZSTDIO # zstd-compressed kernel and user dumps
+
+options SMP # Symmetric MultiProcessor Kernel
+
+# CPU frequency control
+device cpufreq
+
+device acpi
+device smbios
+options IOMMU
+device pci
+options PCI_HP # PCI-Express native HotPlug
+options PCI_IOV # PCI SR-IOV support
+
+# Intel Volume Management Device (VMD) support
+device vmd
+
+# Serial (COM) ports
+device uart # Generic UART driver
+
+device crypto # core crypto support
+device aesni # AES-NI OpenCrypto module
+device loop # Network loopback
+device padlock_rng # VIA Padlock RNG
+device rdrand_rng # Intel Bull Mountain RNG
+device md # Memory "disks"
+device gif # IPv6 and IPv4 tunneling
+device firmware # firmware assist module
+device xz # lzma decompression
+device ig4
+device iicbus
+device nmdm
+
+device bpf # Berkeley packet filter
+
+# USB support
+options USB_DEBUG # enable debug msgs
+device uhci # UHCI PCI->USB interface
+device ohci # OHCI PCI->USB interface
+device ehci # EHCI PCI->USB interface (USB 2.0)
+device xhci # XHCI PCI->USB interface (USB 3.0)
+device usb # USB Bus (required)
+device umass # Disks/Mass storage - Requires scbus and da
+
+# EFI devices
+device efidev # EFI pseudo-device
+device efirtc # EFI RTC
+
+#
+# Storage
+#
+options ZFS
+options FFS # Berkeley Fast Filesystem
+options SOFTUPDATES # Enable FFS soft updates support
+options UFS_ACL # Support for access control lists
+options UFS_DIRHASH # Improve performance on big directories
+options UFS_GJOURNAL # Enable gjournal-based UFS journaling
+options QUOTA # Enable disk quotas for UFS
+options NFSCL # Network Filesystem Client
+options NFSD # Network Filesystem Server
+options MSDOSFS # MSDOS Filesystem
+options CD9660 # ISO 9660 Filesystem
+options PROCFS # Process filesystem (requires PSEUDOFS)
+options PSEUDOFS # Pseudo-filesystem framework
+options TMPFS # Efficient memory filesystem
+options NULLFS
+options FDESCFS
+options AUTOFS
+options GEOM_MIRROR # Soft RAID functionality.
+options GEOM_LABEL # Provides labelization
+device ahci # AHCI-compatible SATA controllers
+device scbus # SCSI bus (required for ATA/SCSI)
+device da # Direct Access (disks)
+device cd # CD
+device pass # Passthrough device (direct ATA/SCSI access)
+device ses # Enclosure Services (SES and SAF-TE)
+device filemon
+
+
+#
+# Networking
+#
+options VIMAGE # Subsystem virtualization, e.g. VNET
+options INET # InterNETworking
+options INET6 # IPv6 communications protocols
+options FIB_ALGO # Modular fib lookups
+options TCP_OFFLOAD # TCP offload
+options TCP_HHOOK # hhook(9) framework for TCP
+options TCP_RFC7413 # TCP Fast Open
+options SCTP_SUPPORT # Allow kldload of SCTP
+options KERN_TLS # TLS transmit & receive offload
+options SCTP
+options DUMMYNET
+options ACCEPT_FILTER_DATA
+options ACCEPT_FILTER_DNS
+options ACCEPT_FILTER_HTTP
+options ACCEPT_FILTER_TLS
+device iflib
+device em # Intel PRO/1000 Gigabit Ethernet Family
+device ixl # Intel 700 Series Physical Function
+device ether # Ethernet support
+device vlan # 802.1Q VLAN support
+device tuntap # Packet tunnel.
+device epair
+device wg
+device pf
+options PF_DEFAULT_TO_DROP