Changeset View
Changeset View
Standalone View
Standalone View
sys/conf/kern.opts.mk
Show All 35 Lines | __DEFAULT_YES_OPTIONS = \ | ||||
IPFILTER \ | IPFILTER \ | ||||
IPSEC_SUPPORT \ | IPSEC_SUPPORT \ | ||||
ISCSI \ | ISCSI \ | ||||
KERNEL_SYMBOLS \ | KERNEL_SYMBOLS \ | ||||
LINUX_EMULATION \ | LINUX_EMULATION \ | ||||
NETGRAPH \ | NETGRAPH \ | ||||
PF \ | PF \ | ||||
REPRODUCIBLE_BUILD \ | REPRODUCIBLE_BUILD \ | ||||
RETPOLINE \ | |||||
SOURCELESS_HOST \ | SOURCELESS_HOST \ | ||||
SOURCELESS_UCODE \ | SOURCELESS_UCODE \ | ||||
TESTS \ | TESTS \ | ||||
USB_GADGET_EXAMPLES \ | USB_GADGET_EXAMPLES \ | ||||
ZFS | ZFS | ||||
__DEFAULT_NO_OPTIONS = \ | __DEFAULT_NO_OPTIONS = \ | ||||
EXTRA_TCP_STACKS \ | EXTRA_TCP_STACKS \ | ||||
Show All 28 Lines | |||||
BROKEN_OPTIONS+= FORMAT_EXTENSIONS | BROKEN_OPTIONS+= FORMAT_EXTENSIONS | ||||
.endif | .endif | ||||
# Things that don't work because the kernel doesn't have the support | # Things that don't work because the kernel doesn't have the support | ||||
# for them. | # for them. | ||||
.if ${MACHINE} != "i386" && ${MACHINE} != "amd64" | .if ${MACHINE} != "i386" && ${MACHINE} != "amd64" | ||||
BROKEN_OPTIONS+= LINUX_EMULATION | BROKEN_OPTIONS+= LINUX_EMULATION | ||||
BROKEN_OPTIONS+= OFED | BROKEN_OPTIONS+= OFED | ||||
.endif | |||||
# Things that don't work based on toolchain support. | |||||
.if ${MACHINE} != "amd64" | |||||
BROKEN_OPTIONS+= RETPOLINE | |||||
.endif | .endif | ||||
emaste: I'm not sure of the best way to handle per-arch retpoline, presumably i386 support could arrive… | |||||
# expanded inline from bsd.mkopt.mk to avoid share/mk dependency | # expanded inline from bsd.mkopt.mk to avoid share/mk dependency | ||||
# Those that default to yes | # Those that default to yes | ||||
.for var in ${__DEFAULT_YES_OPTIONS} | .for var in ${__DEFAULT_YES_OPTIONS} | ||||
.if !defined(MK_${var}) | .if !defined(MK_${var}) | ||||
.if defined(WITHOUT_${var}) # WITHOUT always wins | .if defined(WITHOUT_${var}) # WITHOUT always wins | ||||
MK_${var}:= no | MK_${var}:= no | ||||
.else | .else | ||||
▲ Show 20 Lines • Show All 69 Lines • Show Last 20 Lines |
I'm not sure of the best way to handle per-arch retpoline, presumably i386 support could arrive soon.
The technique may well be applicable to other architectures although other mitigations (i.e., inexpensive versions of x86 IBRS / IBPB) may be preferred and mean it remains an x86-specific technique.