Page Menu
Home
FreeBSD
Search
Configure Global Search
Log In
Files
F148083298
D19041.1785312734.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Flag For Later
Award Token
Size
12 KB
Referenced Files
None
Subscribers
None
D19041.1785312734.diff
View Options
Index: head/UPDATING
===================================================================
--- head/UPDATING
+++ head/UPDATING
@@ -31,6 +31,13 @@
disable the most expensive debugging functionality run
"ln -s 'abort:false,junk:false' /etc/malloc.conf".)
+20190131:
+ Iflib is no longer unconditionally compiled into the kernel. Drivers
+ using iflib and statically compiled into the kernel, now require
+ the 'device iflib' config option. For the same drivers loaded as
+ modules on kernels not having 'device iflib', the iflib.ko module
+ is loaded automatically.
+
20181230:
r342635 changes the way efibootmgr(8) works by requiring users to add
the -b (bootnum) parameter for commands where the bootnum was previously
Index: head/share/man/man4/bnxt.4
===================================================================
--- head/share/man/man4/bnxt.4
+++ head/share/man/man4/bnxt.4
@@ -25,7 +25,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd September 20, 2018
+.Dd January 30, 2019
.Dt BNXT 4
.Os
.Sh NAME
@@ -36,6 +36,7 @@
place the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
+.Cd "device iflib"
.Cd "device bnxt"
.Ed
.Pp
Index: head/share/man/man4/em.4
===================================================================
--- head/share/man/man4/em.4
+++ head/share/man/man4/em.4
@@ -31,7 +31,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd September 20, 2018
+.Dd January 30, 2019
.Dt EM 4
.Os
.Sh NAME
@@ -39,9 +39,10 @@
.Nd "Intel(R) PRO/1000 Gigabit Ethernet adapter driver"
.Sh SYNOPSIS
To compile this driver into the kernel,
-place the following line in your
+place the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
+.Cd "device iflib"
.Cd "device em"
.Ed
.Pp
Index: head/share/man/man4/iavf.4
===================================================================
--- head/share/man/man4/iavf.4
+++ head/share/man/man4/iavf.4
@@ -31,7 +31,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd October 5, 2018
+.Dd January 30, 2019
.Dt IAVF 4
.Os
.Sh NAME
@@ -41,6 +41,7 @@
To compile this driver into the kernel, place the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
+.Cd "device iflib"
.Cd "device iavf"
.Ed
.Pp
Index: head/share/man/man4/ixgbe.4
===================================================================
--- head/share/man/man4/ixgbe.4
+++ head/share/man/man4/ixgbe.4
@@ -31,7 +31,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd December 19, 2010
+.Dd January 30, 2019
.Dt IXGBE 4
.Os
.Sh NAME
@@ -39,9 +39,10 @@
.Nd "Intel(R) 10Gb Ethernet driver for the FreeBSD operating system"
.Sh SYNOPSIS
To compile this driver into the kernel,
-place the following line in your
+place the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
+.Cd "device iflib"
.Cd "device ixgbe"
.Ed
.Pp
Index: head/share/man/man4/ixl.4
===================================================================
--- head/share/man/man4/ixl.4
+++ head/share/man/man4/ixl.4
@@ -31,7 +31,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd October 5, 2018
+.Dd January 30, 2019
.Dt IXL 4
.Os
.Sh NAME
@@ -41,6 +41,7 @@
To compile this driver into the kernel, place the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
+.Cd "device iflib"
.Cd "device ixl"
.Ed
.Pp
Index: head/share/man/man4/vmx.4
===================================================================
--- head/share/man/man4/vmx.4
+++ head/share/man/man4/vmx.4
@@ -17,7 +17,7 @@
.\"
.\" $FreeBSD$
.\"
-.Dd March 17, 2014
+.Dd January 30, 2019
.Dt VMX 4
.Os
.Sh NAME
@@ -25,9 +25,10 @@
.Nd VMware VMXNET3 Virtual Interface Controller device
.Sh SYNOPSIS
To compile this driver into the kernel,
-place the following line in your
+place the following lines in your
kernel configuration file:
.Bd -ragged -offset indent
+.Cd "device iflib"
.Cd "device vmx"
.Ed
.Pp
Index: head/sys/amd64/conf/GENERIC
===================================================================
--- head/sys/amd64/conf/GENERIC
+++ head/sys/amd64/conf/GENERIC
@@ -234,14 +234,18 @@
device puc # Multi I/O cards and multi-channel UARTs
-# PCI Ethernet NICs.
-device bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE
-device de # DEC/Intel DC21x4x (``Tulip'')
+# PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure
+device iflib
device em # Intel PRO/1000 Gigabit Ethernet Family
device ix # Intel PRO/10GbE PCIE PF Ethernet
device ixv # Intel PRO/10GbE PCIE VF Ethernet
device ixl # Intel 700 Series Physical Function
device iavf # Intel Adaptive Virtual Function
+device vmx # VMware VMXNET3 Ethernet
+
+# PCI Ethernet NICs.
+device bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE
+device de # DEC/Intel DC21x4x (``Tulip'')
device le # AMD Am7900 LANCE and Am79C9xx PCnet
device ti # Alteon Networks Tigon I/II gigabit Ethernet
device txp # 3Com 3cR990 (``Typhoon'')
@@ -368,9 +372,6 @@
# NOTE: XENHVM depends on xenpci. They must be added or removed together.
options XENHVM # Xen HVM kernel infrastructure
device xenpci # Xen HVM Hypervisor services driver
-
-# VMware support
-device vmx # VMware VMXNET3 Ethernet
# Netmap provides direct access to TX/RX rings on supported NICs
device netmap # netmap(4) support
Index: head/sys/arm64/conf/GENERIC
===================================================================
--- head/sys/arm64/conf/GENERIC
+++ head/sys/arm64/conf/GENERIC
@@ -145,14 +145,17 @@
options PCI_HP # PCI-Express native HotPlug
options PCI_IOV # PCI SR-IOV support
+# PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure
+device iflib
+device em # Intel PRO/1000 Gigabit Ethernet Family
+device ix # Intel 10Gb Ethernet Family
+
# Ethernet NICs
device mdio
device mii
device miibus # MII bus support
device awg # Allwinner EMAC Gigabit Ethernet
device axgbe # AMD Opteron A1100 integrated NIC
-device em # Intel PRO/1000 Gigabit Ethernet Family
-device ix # Intel 10Gb Ethernet Family
device msk # Marvell/SysKonnect Yukon II Gigabit Ethernet
device neta # Marvell Armada 370/38x/XP/3700 NIC
device smc # SMSC LAN91C111
Index: head/sys/conf/NOTES
===================================================================
--- head/sys/conf/NOTES
+++ head/sys/conf/NOTES
@@ -2092,15 +2092,18 @@
device wb # Winbond W89C840F
device xl # 3Com 3c90x (``Boomerang'', ``Cyclone'')
+# PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure
+device iflib
+device em # Intel Pro/1000 Gigabit Ethernet
+device ix # Intel Pro/10Gbe PCIE Ethernet
+device ixv # Intel Pro/10Gbe PCIE Ethernet VF
+
# PCI Ethernet NICs.
device cxgb # Chelsio T3 10 Gigabit Ethernet
device cxgb_t3fw # Chelsio T3 10 Gigabit Ethernet firmware
device cxgbe # Chelsio T4-T6 1/10/25/40/100 Gigabit Ethernet
device cxgbev # Chelsio T4-T6 Virtual Functions
device de # DEC/Intel DC21x4x (``Tulip'')
-device em # Intel Pro/1000 Gigabit Ethernet
-device ix # Intel Pro/10Gbe PCIE Ethernet
-device ixv # Intel Pro/10Gbe PCIE Ethernet VF
device le # AMD Am7900 LANCE and Am79C9xx PCnet
device mxge # Myricom Myri-10G 10GbE NIC
device oce # Emulex 10 GbE (OneConnect Ethernet)
Index: head/sys/conf/files
===================================================================
--- head/sys/conf/files
+++ head/sys/conf/files
@@ -4132,10 +4132,10 @@
net/if_tap.c optional tap
net/if_vlan.c optional vlan
net/if_vxlan.c optional vxlan inet | vxlan inet6
-net/ifdi_if.m optional ether pci
-net/iflib.c optional ether pci
-net/iflib_clone.c optional ether pci
-net/mp_ring.c optional ether
+net/ifdi_if.m optional ether pci iflib
+net/iflib.c optional ether pci iflib
+net/iflib_clone.c optional ether pci iflib
+net/mp_ring.c optional ether iflib
net/mppcc.c optional netgraph_mppc_compression
net/mppcd.c optional netgraph_mppc_compression
net/netisr.c standard
Index: head/sys/dev/ixgbe/if_ixv.c
===================================================================
--- head/sys/dev/ixgbe/if_ixv.c
+++ head/sys/dev/ixgbe/if_ixv.c
@@ -144,11 +144,9 @@
devclass_t ixv_devclass;
DRIVER_MODULE(ixv, pci, ixv_driver, ixv_devclass, 0, 0);
IFLIB_PNP_INFO(pci, ixv_driver, ixv_vendor_info_array);
+MODULE_DEPEND(ixv, iflib, 1, 1, 1);
MODULE_DEPEND(ixv, pci, 1, 1, 1);
MODULE_DEPEND(ixv, ether, 1, 1, 1);
-#ifdef DEV_NETMAP
-MODULE_DEPEND(ixv, netmap, 1, 1, 1);
-#endif /* DEV_NETMAP */
static device_method_t ixv_if_methods[] = {
DEVMETHOD(ifdi_attach_pre, ixv_if_attach_pre),
Index: head/sys/i386/conf/GENERIC
===================================================================
--- head/sys/i386/conf/GENERIC
+++ head/sys/i386/conf/GENERIC
@@ -220,10 +220,14 @@
device puc # Multi I/O cards and multi-channel UARTs
+# PCI/PCI-X/PCIe Ethernet NICs that use iflib infrastructure
+device iflib
+device em # Intel PRO/1000 Gigabit Ethernet Family
+device vmx # VMware VMXNET3 Ethernet
+
# PCI Ethernet NICs.
device bxe # Broadcom NetXtreme II BCM5771X/BCM578XX 10GbE
device de # DEC/Intel DC21x4x (``Tulip'')
-device em # Intel PRO/1000 Gigabit Ethernet Family
device le # AMD Am7900 LANCE and Am79C9xx PCnet
device ti # Alteon Networks Tigon I/II gigabit Ethernet
device txp # 3Com 3cR990 (``Typhoon'')
@@ -361,9 +365,6 @@
# NOTE: XENHVM depends on xenpci. They must be added or removed together.
options XENHVM # Xen HVM kernel infrastructure
device xenpci # Xen HVM Hypervisor services driver
-
-# VMware support
-device vmx # VMware VMXNET3 Ethernet
# evdev interface
options EVDEV_SUPPORT # evdev support in legacy drivers
Index: head/sys/mips/conf/OCTEON1
===================================================================
--- head/sys/mips/conf/OCTEON1
+++ head/sys/mips/conf/OCTEON1
@@ -155,6 +155,8 @@
# physical port, but may eventually provide support for DSA or similar instead.
#device mv88e61xxphy # Marvell 88E61XX
+device iflib
+
# PCI Ethernet NICs.
device em # Intel PRO/1000 Gigabit Ethernet Family
device ix # Intel PRO/10GbE PF PCIE Ethernet Family
Index: head/sys/mips/conf/std.XLP
===================================================================
--- head/sys/mips/conf/std.XLP
+++ head/sys/mips/conf/std.XLP
@@ -75,6 +75,7 @@
device xlpge
#device re
device msk
+device iflib
device em
# Disks
Index: head/sys/modules/Makefile
===================================================================
--- head/sys/modules/Makefile
+++ head/sys/modules/Makefile
@@ -169,6 +169,7 @@
if_tun \
if_vlan \
if_vxlan \
+ iflib \
${_iir} \
imgact_binmisc \
${_intelspi} \
Index: head/sys/modules/iflib/Makefile
===================================================================
--- head/sys/modules/iflib/Makefile
+++ head/sys/modules/iflib/Makefile
@@ -0,0 +1,13 @@
+# $FreeBSD$
+
+.PATH: ${SRCTOP}/sys/net
+
+KMOD= iflib
+SRCS= \
+ iflib.c \
+ iflib_clone.c \
+ mp_ring.c
+SRCS+= ifdi_if.c
+SRCS+= device_if.h bus_if.h pci_if.h ifdi_if.h
+
+.include <bsd.kmod.mk>
Index: head/sys/powerpc/conf/GENERIC64
===================================================================
--- head/sys/powerpc/conf/GENERIC64
+++ head/sys/powerpc/conf/GENERIC64
@@ -159,6 +159,8 @@
device uart
device uart_z8530
+device iflib
+
# Ethernet hardware
device em # Intel PRO/1000 Gigabit Ethernet Family
device ix # Intel PRO/10GbE PCIE PF Ethernet Family
Index: head/sys/powerpc/conf/MPC85XX
===================================================================
--- head/sys/powerpc/conf/MPC85XX
+++ head/sys/powerpc/conf/MPC85XX
@@ -74,6 +74,7 @@
device da
device ds1307
device ds1553
+device iflib
device em
device alc
device ether
Index: head/sys/powerpc/conf/MPC85XXSPE
===================================================================
--- head/sys/powerpc/conf/MPC85XXSPE
+++ head/sys/powerpc/conf/MPC85XXSPE
@@ -74,6 +74,7 @@
device da
device ds1307
device ds1553
+device iflib
device em
device alc
device ether
Index: head/sys/powerpc/conf/QORIQ64
===================================================================
--- head/sys/powerpc/conf/QORIQ64
+++ head/sys/powerpc/conf/QORIQ64
@@ -81,6 +81,7 @@
device da
device ds1307
device ds1553
+device iflib
device em
device alc
device dpaa
Index: head/sys/powerpc/conf/dpaa/DPAA
===================================================================
--- head/sys/powerpc/conf/dpaa/DPAA
+++ head/sys/powerpc/conf/dpaa/DPAA
@@ -74,6 +74,7 @@
# Network devices
device miibus # MII bus support
+device iflib
device em
Index: head/sys/sparc64/conf/GENERIC
===================================================================
--- head/sys/sparc64/conf/GENERIC
+++ head/sys/sparc64/conf/GENERIC
@@ -181,6 +181,8 @@
#device ppi # Parallel port interface device
#device vpo # Requires scbus and da
+device iflib
+
# PCI Ethernet NICs.
#device de # DEC/Intel DC21x4x (``Tulip'')
device em # Intel PRO/1000 adapter Gigabit Ethernet Card
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Wed, Jul 29, 8:12 AM (3 h, 9 m)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
29302193
Default Alt Text
D19041.1785312734.diff (12 KB)
Attached To
Mode
D19041: Make iflib a loadable module.
Attached
Detach File
Event Timeline
Log In to Comment