Page MenuHomeFreeBSD

D38786.diff
No OneTemporary

D38786.diff

diff --git a/share/mk/src.opts.mk b/share/mk/src.opts.mk
--- a/share/mk/src.opts.mk
+++ b/share/mk/src.opts.mk
@@ -318,8 +318,8 @@
BROKEN_OPTIONS+=LOADER_GELI LOADER_LUA
.endif
-# Kernel TLS is enabled by default on amd64 and aarch64
-.if ${__T} == "aarch64" || ${__T} == "amd64"
+# Kernel TLS is enabled by default on amd64, aarch64 and powerpc64*
+.if ${__T} == "aarch64" || ${__T} == "amd64" || ${__T:Mpowerpc64*} != ""
__DEFAULT_YES_OPTIONS+=OPENSSL_KTLS
.else
__DEFAULT_NO_OPTIONS+=OPENSSL_KTLS
diff --git a/sys/conf/kern.opts.mk b/sys/conf/kern.opts.mk
--- a/sys/conf/kern.opts.mk
+++ b/sys/conf/kern.opts.mk
@@ -84,7 +84,8 @@
# Things that don't work because the kernel doesn't have the support
# for them.
-.if ${MACHINE} != "i386" && ${MACHINE} != "amd64"
+.if ${MACHINE} != "i386" && ${MACHINE} != "amd64" && \
+ ${MACHINE_ARCH:Mpowerpc64*} == ""
BROKEN_OPTIONS+= OFED
.endif
diff --git a/sys/contrib/rdma/krping/krping.c b/sys/contrib/rdma/krping/krping.c
--- a/sys/contrib/rdma/krping/krping.c
+++ b/sys/contrib/rdma/krping/krping.c
@@ -69,9 +69,13 @@
static __inline uint64_t
get_cycles(void)
{
+#if defined(__amd64__) || defined(__i386__)
uint32_t low, high;
__asm __volatile("rdtsc" : "=a" (low), "=d" (high));
return (low | ((u_int64_t)high << 32));
+#elif defined(__powerpc64__)
+ return __builtin_readcyclecounter();
+#endif
}
typedef uint64_t cycles_t;
diff --git a/sys/modules/Makefile b/sys/modules/Makefile
--- a/sys/modules/Makefile
+++ b/sys/modules/Makefile
@@ -843,8 +843,21 @@
.if ${MACHINE_ARCH:Mpowerpc64*} != ""
_ipmi= ipmi
_ixl= ixl
+_mlx5= mlx5
_nvram= opal_nvram
+.if ${MK_OFED} != "no" || defined(ALL_MODULES)
+_ibcore= ibcore
+_ipoib= ipoib
+_iser= iser
+_mlx5ib= mlx5ib
+_rdma= rdma
+.endif
+.if (${MK_INET_SUPPORT} != "no" && ${MK_INET6_SUPPORT} != "no") || \
+ defined(ALL_MODULES)
+_mlx5en= mlx5en
+.endif
.endif
+
.if ${MACHINE_CPUARCH} == "powerpc" && ${MACHINE_ARCH} != "powerpcspe"
# Don't build powermac_nvram for powerpcspe, it's never supported.
_nvram+= powermac_nvram
diff --git a/sys/powerpc/conf/GENERIC64 b/sys/powerpc/conf/GENERIC64
--- a/sys/powerpc/conf/GENERIC64
+++ b/sys/powerpc/conf/GENERIC64
@@ -49,6 +49,7 @@
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 FFS # Berkeley Fast Filesystem
options SOFTUPDATES # Enable FFS soft updates support
options UFS_ACL # Support for access control lists
@@ -128,6 +129,8 @@
options PCI_HP # PCI-Express native HotPlug
device agp
+options COMPAT_LINUXKPI
+
# ATA controllers
device ahci # AHCI-compatible SATA controllers
device ata # Legacy ATA/SATA controllers
@@ -189,6 +192,12 @@
device re # RealTek 8139C+/8169/8169S/8110S
device rl # RealTek 8129/8139
+# Nvidia/Mellanox Connect-X 4 and later, Ethernet only
+# mlx5ib requires ibcore infra and is not included by default
+device mlx5 # Base driver
+device mlxfw # Firmware update
+device mlx5en # Ethernet driver
+
# Pseudo devices.
device crypto # core crypto support
device loop # Network loopback
@@ -199,6 +208,7 @@
device ofwd # Open Firmware disks
device gif # IPv6 and IPv4 tunneling
device firmware # firmware assist module
+device xz # lzma decompression
# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!
diff --git a/sys/powerpc/conf/GENERIC64LE b/sys/powerpc/conf/GENERIC64LE
--- a/sys/powerpc/conf/GENERIC64LE
+++ b/sys/powerpc/conf/GENERIC64LE
@@ -46,6 +46,7 @@
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 FFS # Berkeley Fast Filesystem
options SOFTUPDATES # Enable FFS soft updates support
options UFS_ACL # Support for access control lists
@@ -123,6 +124,8 @@
options PCI_HP # PCI-Express native HotPlug
device agp
+options COMPAT_LINUXKPI
+
# ATA controllers
device ahci # AHCI-compatible SATA controllers
device ata # Legacy ATA/SATA controllers
@@ -184,6 +187,12 @@
device re # RealTek 8139C+/8169/8169S/8110S
device rl # RealTek 8129/8139
+# Nvidia/Mellanox Connect-X 4 and later, Ethernet only
+# mlx5ib requires ibcore infra and is not included by default
+device mlx5 # Base driver
+device mlxfw # Firmware update
+device mlx5en # Ethernet driver
+
# Pseudo devices.
device crypto # core crypto support
device loop # Network loopback
@@ -194,6 +203,7 @@
device ofwd # Open Firmware disks
device gif # IPv6 and IPv4 tunneling
device firmware # firmware assist module
+device xz # lzma decompression
# The `bpf' device enables the Berkeley Packet Filter.
# Be aware of the administrative consequences of enabling this!

File Metadata

Mime Type
text/plain
Expires
Mon, Apr 28, 9:31 PM (12 h, 32 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
17833928
Default Alt Text
D38786.diff (4 KB)

Event Timeline