With r181803 on 2008-08-17 23:27:27Z the first VIMAGE commit went into

HEAD.  Enable VIMAGE in GENERIC kernels and some others (where GENERIC does
not exist) on HEAD.

Disable building LINT-VIMAGE with VIMAGE being default.

This should give it a lot more exposure in the run-up to 12 to help
us evaluate whether to keep it on by default or not.
We are also hoping to get better performance testing.
The feature can be disabled using nooptions.

Requested by:		many
Reviewed by:		kristof, emaste, hiren
X-MFC after:		never
Relnotes:		yes
Differential Revision:	https://reviews.freebsd.org/D12639
This commit is contained in:
Bjoern A. Zeeb 2017-10-20 21:40:59 +00:00
parent eadbeae5e7
commit 8e94025b41
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=324810
15 changed files with 22 additions and 9 deletions

View File

@ -26,6 +26,7 @@ makeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support
options SCHED_ULE # ULE scheduler
options PREEMPTION # Enable kernel thread preemption
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options IPSEC # IP (v4/v6) security

View File

@ -5,6 +5,7 @@
options HZ=1000
options ARM_L2_PIPT # Only L2 PIPT is supported
options PREEMPTION # Enable kernel thread preemption
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options TCP_HHOOK # hhook(9) framework for TCP

View File

@ -5,6 +5,7 @@
options HZ=1000
options ARM_L2_PIPT # Only L2 PIPT is supported
options PREEMPTION # Enable kernel thread preemption
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options TCP_HHOOK # hhook(9) framework for TCP

View File

@ -26,6 +26,7 @@ makeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support
options SCHED_ULE # ULE scheduler
options PREEMPTION # Enable kernel thread preemption
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options IPSEC # IP (v4/v6) security

View File

@ -802,8 +802,8 @@ options NGATM_CCATM
device mn # Munich32x/Falc54 Nx64kbit/sec cards.
# Network stack virtualization.
#options VIMAGE
#options VNET_DEBUG # debug for VIMAGE
options VIMAGE
options VNET_DEBUG # debug for VIMAGE
#
# Network interfaces:

View File

@ -6,16 +6,13 @@ all:
clean:
rm -f LINT
.if ${TARGET} == "amd64" || ${TARGET} == "i386"
rm -f LINT-VIMAGE LINT-NOINET LINT-NOINET6 LINT-NOIP
rm -f LINT-NOINET LINT-NOINET6 LINT-NOIP
.endif
NOTES= ../../conf/NOTES NOTES
LINT: ${NOTES} ../../conf/makeLINT.sed
cat ${NOTES} | sed -E -n -f ../../conf/makeLINT.sed > ${.TARGET}
.if ${TARGET} == "amd64" || ${TARGET} == "i386"
echo "include ${.TARGET}" > ${.TARGET}-VIMAGE
echo "ident ${.TARGET}-VIMAGE" >> ${.TARGET}-VIMAGE
echo "options VIMAGE" >> ${.TARGET}-VIMAGE
echo "include ${.TARGET}" > ${.TARGET}-NOINET
echo "ident ${.TARGET}-NOINET" >> ${.TARGET}-NOINET
echo 'makeoptions MKMODULESENV+="WITHOUT_INET_SUPPORT="' >> ${.TARGET}-NOINET

View File

@ -28,6 +28,7 @@ makeoptions WITH_CTF=1 # Run ctfconvert(1) for DTrace support
options SCHED_ULE # ULE scheduler
options PREEMPTION # Enable kernel thread preemption
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options IPSEC # IP (v4/v6) security

View File

@ -30,6 +30,7 @@ options KDB
options SMP # Symmetric MultiProcessor Kernel
options SCHED_ULE
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options TCP_HHOOK # hhook(9) framework for TCP

View File

@ -28,6 +28,7 @@ options KDB
options SMP # Symmetric MultiProcessor Kernel
options SCHED_ULE
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options TCP_HHOOK # hhook(9) framework for TCP

View File

@ -31,6 +31,7 @@ options DDB
options KDB
options SCHED_4BSD #4BSD scheduler
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET #InterNETworking
options TCP_HHOOK # hhook(9) framework for TCP
options NFSCL #Network Filesystem Client
@ -45,6 +46,11 @@ options _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
#options WITNESS #Enable checks to detect deadlocks and cycles
#options WITNESS_SKIPSPIN #Don't run witness on spinlocks for speed
# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
# Note that 'bpf' is required for DHCP.
device bpf # Berkeley packet filter
device loop
device ether
device md

View File

@ -312,9 +312,8 @@ static void
vnet0_init(void *arg __unused)
{
/* Warn people before take off - in case we crash early. */
printf("WARNING: VIMAGE (virtualized network stack) is a highly "
"experimental feature.\n");
if (bootverbose)
printf("VIMAGE (virtualized network stack) enabled\n");
/*
* We MUST clear curvnet in vi_init_done() before going SMP,

View File

@ -35,6 +35,7 @@ options PSERIES #PAPR-compliant systems
options FDT
options SCHED_ULE #ULE scheduler
options PREEMPTION #Enable kernel thread preemption
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET #InterNETworking
options INET6 #IPv6 communications protocols
options IPSEC # IP (v4/v6) security

View File

@ -35,6 +35,7 @@ options PSERIES #PAPR-compliant systems (e.g. IBM p)
options FDT #Flattened Device Tree
options SCHED_ULE #ULE scheduler
options PREEMPTION #Enable kernel thread preemption
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET #InterNETworking
options INET6 #IPv6 communications protocols
options TCP_HHOOK # hhook(9) framework for TCP

View File

@ -30,6 +30,7 @@ makeoptions WITHOUT_MODULES="usb otusfw mwlfw ispfw mwlfw ralfw rtwnfw"
options SCHED_ULE # ULE scheduler
options PREEMPTION # Enable kernel thread preemption
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options TCP_HHOOK # hhook(9) framework for TCP

View File

@ -28,6 +28,7 @@ makeoptions DEBUG=-g # Build kernel with gdb(1) debug symbols
options SCHED_ULE # ULE scheduler
options PREEMPTION # Enable kernel thread preemption
options VIMAGE # Subsystem virtualization, e.g. VNET
options INET # InterNETworking
options INET6 # IPv6 communications protocols
options IPSEC # IP (v4/v6) security