revert igb to 5.3.5.10
because 5.3.5.12 broke JUMBO_FRAMES (again)
This commit is contained in:
parent
6749ef5ad2
commit
6eb123031d
4
Makefile
4
Makefile
@ -38,7 +38,7 @@ KERNEL_CFG_ORG=config-${KERNEL_VER}.org
|
|||||||
E1000EDIR=e1000e-3.3.6
|
E1000EDIR=e1000e-3.3.6
|
||||||
E1000ESRC=${E1000EDIR}.tar.gz
|
E1000ESRC=${E1000EDIR}.tar.gz
|
||||||
|
|
||||||
IGBDIR=igb-5.3.5.12
|
IGBDIR=igb-5.3.5.10
|
||||||
IGBSRC=${IGBDIR}.tar.gz
|
IGBSRC=${IGBDIR}.tar.gz
|
||||||
|
|
||||||
IXGBEDIR=ixgbe-5.3.3
|
IXGBEDIR=ixgbe-5.3.3
|
||||||
@ -254,6 +254,8 @@ igb.ko igb: .compile_mark ${IGBSRC}
|
|||||||
rm -rf ${IGBDIR}
|
rm -rf ${IGBDIR}
|
||||||
tar xf ${IGBSRC}
|
tar xf ${IGBSRC}
|
||||||
[ ! -e /lib/modules/${KVNAME}/build ] || (echo "please remove /lib/modules/${KVNAME}/build" && false)
|
[ ! -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}
|
cd ${IGBDIR}/src; make BUILD_KERNEL=${KVNAME} KSRC=${TOP}/${KERNEL_SRC}
|
||||||
cp ${IGBDIR}/src/igb.ko igb.ko
|
cp ${IGBDIR}/src/igb.ko igb.ko
|
||||||
|
|
||||||
|
BIN
igb-5.3.5.10.tar.gz
Normal file
BIN
igb-5.3.5.10.tar.gz
Normal file
Binary file not shown.
Binary file not shown.
47
patches/intel/igb/igb_4.10_max-mtu.patch
Normal file
47
patches/intel/igb/igb_4.10_max-mtu.patch
Normal file
@ -0,0 +1,47 @@
|
|||||||
|
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;
|
17
patches/intel/igb/igb_4.12_compat.patch
Normal file
17
patches/intel/igb/igb_4.12_compat.patch
Normal file
@ -0,0 +1,17 @@
|
|||||||
|
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;
|
||||||
|
}
|
Loading…
Reference in New Issue
Block a user