Module Name: src
Committed By: yamaguchi
Date: Fri Oct 13 04:43:36 UTC 2023
Modified Files:
src/sys/dev/pci: if_ixl.c
Log Message:
ixl(4): limit receive frame size upto 9600 even if ETHERCAP_VLAN_MTU is enabled
To generate a diff of this commit:
cvs rdiff -u -r1.94 -r1.95 src/sys/dev/pci/if_ixl.c
Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.
Modified files:
Index: src/sys/dev/pci/if_ixl.c
diff -u src/sys/dev/pci/if_ixl.c:1.94 src/sys/dev/pci/if_ixl.c:1.95
--- src/sys/dev/pci/if_ixl.c:1.94 Fri Oct 13 02:22:20 2023
+++ src/sys/dev/pci/if_ixl.c Fri Oct 13 04:43:35 2023
@@ -1,4 +1,4 @@
-/* $NetBSD: if_ixl.c,v 1.94 2023/10/13 02:22:20 yamaguchi Exp $ */
+/* $NetBSD: if_ixl.c,v 1.95 2023/10/13 04:43:35 yamaguchi Exp $ */
/*
* Copyright (c) 2013-2015, Intel Corporation
@@ -74,7 +74,7 @@
*/
#include <sys/cdefs.h>
-__KERNEL_RCSID(0, "$NetBSD: if_ixl.c,v 1.94 2023/10/13 02:22:20 yamaguchi Exp $");
+__KERNEL_RCSID(0, "$NetBSD: if_ixl.c,v 1.95 2023/10/13 04:43:35 yamaguchi Exp $");
#ifdef _KERNEL_OPT
#include "opt_net_mpsafe.h"
@@ -166,7 +166,8 @@ struct ixl_softc; /* defined */
#define IXL_MCLBYTES (MCLBYTES - ETHER_ALIGN)
#define IXL_MTU_ETHERLEN ETHER_HDR_LEN \
- + ETHER_CRC_LEN
+ + ETHER_CRC_LEN \
+ + ETHER_VLAN_ENCAP_LEN
#if 0
#define IXL_MAX_MTU (9728 - IXL_MTU_ETHERLEN)
#else
@@ -3067,8 +3068,8 @@ ixl_rxr_config(struct ixl_softc *sc, str
memset(&rxq, 0, sizeof(rxq));
rxmax = ifp->if_mtu + IXL_MTU_ETHERLEN;
- if (ISSET(sc->sc_ec.ec_capenable, ETHERCAP_VLAN_MTU))
- rxmax += ETHER_VLAN_ENCAP_LEN;
+ if (!ISSET(sc->sc_ec.ec_capenable, ETHERCAP_VLAN_MTU))
+ rxmax -= ETHER_VLAN_ENCAP_LEN;
rxq.head = htole16(rxr->rxr_cons);
rxq.base = htole64(IXL_DMA_DVA(&rxr->rxr_mem) / IXL_HMC_RXQ_BASE_UNIT);