KERNEL_CFG_ORG=config-${KERNEL_VER}.org
-E1000EDIR=e1000e-3.3.5.10
+E1000EDIR=e1000e-3.3.6
E1000ESRC=${E1000EDIR}.tar.gz
-IGBDIR=igb-5.3.5.10
+IGBDIR=igb-5.3.5.12
IGBSRC=${IGBDIR}.tar.gz
-IXGBEDIR=ixgbe-5.2.3
+IXGBEDIR=ixgbe-5.3.3
IXGBESRC=${IXGBEDIR}.tar.gz
ZFSONLINUX_SUBMODULE=submodules/zfsonlinux
rm -rf ${IGBDIR}
tar xf ${IGBSRC}
[ ! -e /lib/modules/${KVNAME}/build ] || (echo "please remove /lib/modules/${KVNAME}/build" && false)
- cd ${IGBDIR}; patch -p1 < ../patches/intel/igb/igb_4.10_max-mtu.patch
- cd ${IGBDIR}; patch -p1 < ../patches/intel/igb/igb_4.12_compat.patch
cd ${IGBDIR}/src; make BUILD_KERNEL=${KVNAME} KSRC=${TOP}/${KERNEL_SRC}
cp ${IGBDIR}/src/igb.ko igb.ko
rm -rf ${IXGBEDIR}
tar xf ${IXGBESRC}
[ ! -e /lib/modules/${KVNAME}/build ] || (echo "please remove /lib/modules/${KVNAME}/build" && false)
- cd ${IXGBEDIR}; patch -p1 < ../patches/intel/ixgbe/ixgbe_4.13_compat.patch
cd ${IXGBEDIR}/src; make CFLAGS_EXTRA="-DIXGBE_NO_LRO" BUILD_KERNEL=${KVNAME} KSRC=${TOP}/${KERNEL_SRC}
cp ${IXGBEDIR}/src/ixgbe.ko ixgbe.ko
+++ /dev/null
-diff --git a/src/e1000_defines.h b/src/e1000_defines.h
-index 6de3988..d58e12f 100644
---- a/src/e1000_defines.h
-+++ b/src/e1000_defines.h
-@@ -423,7 +423,8 @@
- #define ETHERNET_IEEE_VLAN_TYPE 0x8100 /* 802.3ac packet */
-
- #define ETHERNET_FCS_SIZE 4
--#define MAX_JUMBO_FRAME_SIZE 0x3F00
-+#define MAX_JUMBO_FRAME_SIZE 0x2600
-+#define MAX_STD_JUMBO_FRAME_SIZE 9216
- /* The datasheet maximum supported RX size is 9.5KB (9728 bytes) */
- #define MAX_RX_JUMBO_FRAME_SIZE 0x2600
- #define E1000_TX_PTR_GAP 0x1F
-diff --git a/src/igb_main.c b/src/igb_main.c
-index 2dff0f4..bbfe87e 100644
---- a/src/igb_main.c
-+++ b/src/igb_main.c
-@@ -2852,6 +2852,10 @@ static int igb_probe(struct pci_dev *pdev,
- if (pci_using_dac)
- netdev->features |= NETIF_F_HIGHDMA;
-
-+ /* MTU range: 68 - 9216 */
-+ netdev->min_mtu = ETH_MIN_MTU;
-+ netdev->max_mtu = MAX_STD_JUMBO_FRAME_SIZE;
-+
- adapter->en_mng_pt = e1000_enable_mng_pass_thru(hw);
- #ifdef DEBUG
- if (adapter->dmac != IGB_DMAC_DISABLE)
-@@ -5832,17 +5836,6 @@ static int igb_change_mtu(struct net_device *netdev, int new_mtu)
- struct pci_dev *pdev = adapter->pdev;
- int max_frame = new_mtu + ETH_HLEN + ETH_FCS_LEN + VLAN_HLEN;
-
-- if ((new_mtu < 68) || (max_frame > MAX_JUMBO_FRAME_SIZE)) {
-- dev_err(pci_dev_to_dev(pdev), "Invalid MTU setting\n");
-- return -EINVAL;
-- }
--
--#define MAX_STD_JUMBO_FRAME_SIZE 9238
-- if (max_frame > MAX_STD_JUMBO_FRAME_SIZE) {
-- dev_err(pci_dev_to_dev(pdev), "MTU > 9216 not supported.\n");
-- return -EINVAL;
-- }
--
- /* adjust max frame to be at least the size of a standard frame */
- if (max_frame < (ETH_FRAME_LEN + ETH_FCS_LEN))
- max_frame = ETH_FRAME_LEN + ETH_FCS_LEN;
+++ /dev/null
-diff --git a/src/igb_main.c.orig b/src/igb_main.c
-index 3ee1ec7..c8adf04 100644
---- a/src/igb_main.c.orig
-+++ b/src/igb_main.c
-@@ -1047,8 +1047,10 @@ static void igb_set_interrupt_capability(struct igb_adapter *adapter, bool msix)
- for (i = 0; i < numvecs; i++)
- adapter->msix_entries[i].entry = i;
-
-- err = pci_enable_msix(pdev,
-- adapter->msix_entries, numvecs);
-+ err = pci_enable_msix_range(pdev,
-+ adapter->msix_entries,
-+ numvecs,
-+ numvecs);
- if (err == 0)
- break;
- }
+++ /dev/null
-diff --git a/src/ixgbe_main.c.orig b/src/ixgbe_main.c
-index 68bead6..bb3a100 100644
---- a/src/ixgbe_main.c.orig
-+++ b/src/ixgbe_main.c
-@@ -9809,7 +9809,8 @@ static void ixgbe_set_prio_tc_map(struct ixgbe_adapter __maybe_unused *adapter)
- #ifdef NETIF_F_HW_TC
- static int
- __ixgbe_setup_tc(struct net_device *dev, __always_unused u32 handle,
-- __always_unused __be16 proto, struct tc_to_netdev *tc)
-+ __always_unused u32 chain_index, __always_unused __be16 proto,
-+ struct tc_to_netdev *tc)
- {
- if (tc->type != TC_SETUP_MQPRIO)
- return -EINVAL;