Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F115734989
D38786.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Flag For Later
Award Token
Size
4 KB
Referenced Files
None
Subscribers
None
D38786.diff
View Options
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
Details
Attached
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)
Attached To
Mode
D38786: powerpc64*: port mlx5, OFED, KTLS and krping
Attached
Detach File
Event Timeline
Log In to Comment