Module Name: src Committed By: msaitoh Date: Fri Sep 3 08:57:58 UTC 2021
Modified Files: src/sys/dev/pci/ixgbe: ix_txrx.c ixgbe.h Log Message: Save the discard_multidesc state to not to forget the state by exiting rxeof(). To generate a diff of this commit: cvs rdiff -u -r1.89 -r1.90 src/sys/dev/pci/ixgbe/ix_txrx.c cvs rdiff -u -r1.79 -r1.80 src/sys/dev/pci/ixgbe/ixgbe.h 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/ixgbe/ix_txrx.c diff -u src/sys/dev/pci/ixgbe/ix_txrx.c:1.89 src/sys/dev/pci/ixgbe/ix_txrx.c:1.90 --- src/sys/dev/pci/ixgbe/ix_txrx.c:1.89 Fri Sep 3 08:43:23 2021 +++ src/sys/dev/pci/ixgbe/ix_txrx.c Fri Sep 3 08:57:58 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: ix_txrx.c,v 1.89 2021/09/03 08:43:23 msaitoh Exp $ */ +/* $NetBSD: ix_txrx.c,v 1.90 2021/09/03 08:57:58 msaitoh Exp $ */ /****************************************************************************** @@ -64,7 +64,7 @@ */ #include <sys/cdefs.h> -__KERNEL_RCSID(0, "$NetBSD: ix_txrx.c,v 1.89 2021/09/03 08:43:23 msaitoh Exp $"); +__KERNEL_RCSID(0, "$NetBSD: ix_txrx.c,v 1.90 2021/09/03 08:57:58 msaitoh Exp $"); #include "opt_inet.h" #include "opt_inet6.h" @@ -1568,6 +1568,7 @@ ixgbe_setup_receive_ring(struct rx_ring rxr->next_to_check = 0; rxr->next_to_refresh = adapter->num_rx_desc - 1; /* Fully allocated */ rxr->lro_enabled = FALSE; + rxr->discard_multidesc = false; rxr->rx_copies.ev_count = 0; #if 0 /* NetBSD */ rxr->rx_bytes.ev_count = 0; @@ -1805,7 +1806,7 @@ ixgbe_rxeof(struct ix_queue *que) u32 staterr = 0; u32 loopcount = 0; u32 limit = adapter->rx_process_limit; - bool discard_multidesc = false; + bool discard_multidesc = rxr->discard_multidesc; #ifdef RSS u16 pkt_info; #endif @@ -2114,6 +2115,9 @@ next_desc: } } + /* Save the current status */ + rxr->discard_multidesc = discard_multidesc; + /* Refresh any remaining buf structs */ if (ixgbe_rx_unrefreshed(rxr)) ixgbe_refresh_mbufs(rxr, i); Index: src/sys/dev/pci/ixgbe/ixgbe.h diff -u src/sys/dev/pci/ixgbe/ixgbe.h:1.79 src/sys/dev/pci/ixgbe/ixgbe.h:1.80 --- src/sys/dev/pci/ixgbe/ixgbe.h:1.79 Thu Aug 26 09:03:47 2021 +++ src/sys/dev/pci/ixgbe/ixgbe.h Fri Sep 3 08:57:58 2021 @@ -1,4 +1,4 @@ -/* $NetBSD: ixgbe.h,v 1.79 2021/08/26 09:03:47 msaitoh Exp $ */ +/* $NetBSD: ixgbe.h,v 1.80 2021/09/03 08:57:58 msaitoh Exp $ */ /****************************************************************************** SPDX-License-Identifier: BSD-3-Clause @@ -407,6 +407,7 @@ struct rx_ring { bool lro_enabled; bool hw_rsc; bool vtag_strip; + bool discard_multidesc; u16 next_to_refresh; u16 next_to_check; u16 num_desc;