Netdev List
 help / color / mirror / Atom feed
* [net 2/8] fm10k: fix SM mailbox full condition
From: Jeff Kirsher @ 2018-10-31 19:42 UTC (permalink / raw)
  To: davem; +Cc: Ngai-Mint Kwan, netdev, nhorman, sassmann, Jacob Keller,
	Jeff Kirsher
In-Reply-To: <20181031194254.16417-1-jeffrey.t.kirsher@intel.com>

From: Ngai-Mint Kwan <ngai-mint.kwan@intel.com>

Current condition will always incorrectly report a full SM mailbox if an
IES API application is not running. Due to this, the
"fm10k_service_task" will be infinitely queued into the driver's
workqueue. This, in turn, will cause a "kworker" thread to report 100%
CPU utilization and might cause "soft lockup" events or system crashes.

To fix this issue, a new condition is added to determine if the SM
mailbox is in the correct state of FM10K_STATE_OPEN before proceeding.
In other words, an instance of the IES API must be running. If there is,
the remainder of the flow stays the same which is to determine if the SM
mailbox capacity has been exceeded or not and take appropriate action.

Signed-off-by: Ngai-Mint Kwan <ngai-mint.kwan@intel.com>
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/fm10k/fm10k_iov.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_iov.c b/drivers/net/ethernet/intel/fm10k/fm10k_iov.c
index e707d717012f..74160c2095ee 100644
--- a/drivers/net/ethernet/intel/fm10k/fm10k_iov.c
+++ b/drivers/net/ethernet/intel/fm10k/fm10k_iov.c
@@ -244,7 +244,8 @@ s32 fm10k_iov_mbx(struct fm10k_intfc *interface)
 		}
 
 		/* guarantee we have free space in the SM mailbox */
-		if (!hw->mbx.ops.tx_ready(&hw->mbx, FM10K_VFMBX_MSG_MTU)) {
+		if (hw->mbx.state == FM10K_STATE_OPEN &&
+		    !hw->mbx.ops.tx_ready(&hw->mbx, FM10K_VFMBX_MSG_MTU)) {
 			/* keep track of how many times this occurs */
 			interface->hw_sm_mbx_full++;
 
-- 
2.17.2

^ permalink raw reply related

* [net 3/8] fm10k: ensure completer aborts are marked as non-fatal after a resume
From: Jeff Kirsher @ 2018-10-31 19:42 UTC (permalink / raw)
  To: davem; +Cc: Jacob Keller, netdev, nhorman, sassmann, Jeff Kirsher
In-Reply-To: <20181031194254.16417-1-jeffrey.t.kirsher@intel.com>

From: Jacob Keller <jacob.e.keller@intel.com>

VF drivers can trigger PCIe completer aborts any time they read a queue
that they don't own. Even in nominal circumstances, it is not possible
to prevent the VF driver from reading queues it doesn't own. VF drivers
may attempt to read queues it previously owned, but which it no longer
does due to a PF reset.

Normally these completer aborts aren't an issue. However, on some
platforms these trigger machine check errors. This is true even if we
lower their severity from fatal to non-fatal. Indeed, we already have
code for lowering the severity.

We could attempt to mask these errors conditionally around resets, which
is the most common time they would occur. However this would essentially
be a race between the PF and VF drivers, and we may still occasionally
see machine check exceptions on these strictly configured platforms.

Instead, mask the errors entirely any time we resume VFs. By doing so,
we prevent the completer aborts from being sent to the parent PCIe
device, and thus these strict platforms will not upgrade them into
machine check errors.

Additionally, we don't lose any information by masking these errors,
because we'll still report VFs which attempt to access queues via the
FUM_BAD_VF_QACCESS errors.

Without this change, on platforms where completer aborts cause machine
check exceptions, the VF reading queues it doesn't own could crash the
host system. Masking the completer abort prevents this, so we should
mask it for good, and not just around a PCIe reset. Otherwise malicious
or misconfigured VFs could cause the host system to crash.

Because we are masking the error entirely, there is little reason to
also keep setting the severity bit, so that code is also removed.

Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/fm10k/fm10k_iov.c | 48 ++++++++++++--------
 1 file changed, 28 insertions(+), 20 deletions(-)

diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_iov.c b/drivers/net/ethernet/intel/fm10k/fm10k_iov.c
index 74160c2095ee..5d4f1761dc0c 100644
--- a/drivers/net/ethernet/intel/fm10k/fm10k_iov.c
+++ b/drivers/net/ethernet/intel/fm10k/fm10k_iov.c
@@ -303,6 +303,28 @@ void fm10k_iov_suspend(struct pci_dev *pdev)
 	}
 }
 
+static void fm10k_mask_aer_comp_abort(struct pci_dev *pdev)
+{
+	u32 err_mask;
+	int pos;
+
+	pos = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_ERR);
+	if (!pos)
+		return;
+
+	/* Mask the completion abort bit in the ERR_UNCOR_MASK register,
+	 * preventing the device from reporting these errors to the upstream
+	 * PCIe root device. This avoids bringing down platforms which upgrade
+	 * non-fatal completer aborts into machine check exceptions. Completer
+	 * aborts can occur whenever a VF reads a queue it doesn't own.
+	 */
+	pci_read_config_dword(pdev, pos + PCI_ERR_UNCOR_MASK, &err_mask);
+	err_mask |= PCI_ERR_UNC_COMP_ABORT;
+	pci_write_config_dword(pdev, pos + PCI_ERR_UNCOR_MASK, err_mask);
+
+	mmiowb();
+}
+
 int fm10k_iov_resume(struct pci_dev *pdev)
 {
 	struct fm10k_intfc *interface = pci_get_drvdata(pdev);
@@ -318,6 +340,12 @@ int fm10k_iov_resume(struct pci_dev *pdev)
 	if (!iov_data)
 		return -ENOMEM;
 
+	/* Lower severity of completer abort error reporting as
+	 * the VFs can trigger this any time they read a queue
+	 * that they don't own.
+	 */
+	fm10k_mask_aer_comp_abort(pdev);
+
 	/* allocate hardware resources for the VFs */
 	hw->iov.ops.assign_resources(hw, num_vfs, num_vfs);
 
@@ -461,20 +489,6 @@ void fm10k_iov_disable(struct pci_dev *pdev)
 	fm10k_iov_free_data(pdev);
 }
 
-static void fm10k_disable_aer_comp_abort(struct pci_dev *pdev)
-{
-	u32 err_sev;
-	int pos;
-
-	pos = pci_find_ext_capability(pdev, PCI_EXT_CAP_ID_ERR);
-	if (!pos)
-		return;
-
-	pci_read_config_dword(pdev, pos + PCI_ERR_UNCOR_SEVER, &err_sev);
-	err_sev &= ~PCI_ERR_UNC_COMP_ABORT;
-	pci_write_config_dword(pdev, pos + PCI_ERR_UNCOR_SEVER, err_sev);
-}
-
 int fm10k_iov_configure(struct pci_dev *pdev, int num_vfs)
 {
 	int current_vfs = pci_num_vf(pdev);
@@ -496,12 +510,6 @@ int fm10k_iov_configure(struct pci_dev *pdev, int num_vfs)
 
 	/* allocate VFs if not already allocated */
 	if (num_vfs && num_vfs != current_vfs) {
-		/* Disable completer abort error reporting as
-		 * the VFs can trigger this any time they read a queue
-		 * that they don't own.
-		 */
-		fm10k_disable_aer_comp_abort(pdev);
-
 		err = pci_enable_sriov(pdev, num_vfs);
 		if (err) {
 			dev_err(&pdev->dev,
-- 
2.17.2

^ permalink raw reply related

* [net 7/8] i40e: Update status codes
From: Jeff Kirsher @ 2018-10-31 19:42 UTC (permalink / raw)
  To: davem; +Cc: Mitch Williams, netdev, nhorman, sassmann, Jeff Kirsher
In-Reply-To: <20181031194254.16417-1-jeffrey.t.kirsher@intel.com>

From: Mitch Williams <mitch.a.williams@intel.com>

Add a few new status code which will be used by the ice driver, and
rename a few to make them more consistent. Error code are mapped to
similar values as in i40e_status.h, so as to be compatible with older
VF drivers not using this status enum.

Signed-off-by: Mitch Williams <mitch.a.williams@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c |  2 +-
 include/linux/avf/virtchnl.h                       | 12 +++++++++---
 2 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c
index 81b0e1f8d14b..ac5698ed0b11 100644
--- a/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c
+++ b/drivers/net/ethernet/intel/i40e/i40e_virtchnl_pf.c
@@ -3674,7 +3674,7 @@ int i40e_vc_process_vf_msg(struct i40e_pf *pf, s16 vf_id, u32 v_opcode,
 		dev_err(&pf->pdev->dev, "Invalid message from VF %d, opcode %d, len %d\n",
 			local_vf_id, v_opcode, msglen);
 		switch (ret) {
-		case VIRTCHNL_ERR_PARAM:
+		case VIRTCHNL_STATUS_ERR_PARAM:
 			return -EPERM;
 		default:
 			return -EINVAL;
diff --git a/include/linux/avf/virtchnl.h b/include/linux/avf/virtchnl.h
index 2c9756bd9c4c..b2488055fd1d 100644
--- a/include/linux/avf/virtchnl.h
+++ b/include/linux/avf/virtchnl.h
@@ -62,13 +62,19 @@
 /* Error Codes */
 enum virtchnl_status_code {
 	VIRTCHNL_STATUS_SUCCESS				= 0,
-	VIRTCHNL_ERR_PARAM				= -5,
+	VIRTCHNL_STATUS_ERR_PARAM			= -5,
+	VIRTCHNL_STATUS_ERR_NO_MEMORY			= -18,
 	VIRTCHNL_STATUS_ERR_OPCODE_MISMATCH		= -38,
 	VIRTCHNL_STATUS_ERR_CQP_COMPL_ERROR		= -39,
 	VIRTCHNL_STATUS_ERR_INVALID_VF_ID		= -40,
-	VIRTCHNL_STATUS_NOT_SUPPORTED			= -64,
+	VIRTCHNL_STATUS_ERR_ADMIN_QUEUE_ERROR		= -53,
+	VIRTCHNL_STATUS_ERR_NOT_SUPPORTED		= -64,
 };
 
+/* Backward compatibility */
+#define VIRTCHNL_ERR_PARAM VIRTCHNL_STATUS_ERR_PARAM
+#define VIRTCHNL_STATUS_NOT_SUPPORTED VIRTCHNL_STATUS_ERR_NOT_SUPPORTED
+
 #define VIRTCHNL_LINK_SPEED_100MB_SHIFT		0x1
 #define VIRTCHNL_LINK_SPEED_1000MB_SHIFT	0x2
 #define VIRTCHNL_LINK_SPEED_10GB_SHIFT		0x3
@@ -831,7 +837,7 @@ virtchnl_vc_validate_vf_msg(struct virtchnl_version_info *ver, u32 v_opcode,
 	case VIRTCHNL_OP_EVENT:
 	case VIRTCHNL_OP_UNKNOWN:
 	default:
-		return VIRTCHNL_ERR_PARAM;
+		return VIRTCHNL_STATUS_ERR_PARAM;
 	}
 	/* few more checks */
 	if (err_msg_format || valid_len != msglen)
-- 
2.17.2

^ permalink raw reply related

* [net 4/8] fm10k: add missing device IDs to the upstream driver
From: Jeff Kirsher @ 2018-10-31 19:42 UTC (permalink / raw)
  To: davem; +Cc: Jacob Keller, netdev, nhorman, sassmann, Jeff Kirsher
In-Reply-To: <20181031194254.16417-1-jeffrey.t.kirsher@intel.com>

From: Jacob Keller <jacob.e.keller@intel.com>

The device IDs for the Ethernet SDI Adapter devices were never added to
the upstream driver. The IDs are already in the pci.ids database, and
are supported by the out-of-tree driver.

Add the device IDs now, so that the upstream driver can recognize and
load these devices.

Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/fm10k/fm10k_pci.c  | 2 ++
 drivers/net/ethernet/intel/fm10k/fm10k_type.h | 2 ++
 2 files changed, 4 insertions(+)

diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_pci.c b/drivers/net/ethernet/intel/fm10k/fm10k_pci.c
index 02345d381303..e49fb51d3613 100644
--- a/drivers/net/ethernet/intel/fm10k/fm10k_pci.c
+++ b/drivers/net/ethernet/intel/fm10k/fm10k_pci.c
@@ -23,6 +23,8 @@ static const struct fm10k_info *fm10k_info_tbl[] = {
  */
 static const struct pci_device_id fm10k_pci_tbl[] = {
 	{ PCI_VDEVICE(INTEL, FM10K_DEV_ID_PF), fm10k_device_pf },
+	{ PCI_VDEVICE(INTEL, FM10K_DEV_ID_SDI_FM10420_QDA2), fm10k_device_pf },
+	{ PCI_VDEVICE(INTEL, FM10K_DEV_ID_SDI_FM10420_DA2), fm10k_device_pf },
 	{ PCI_VDEVICE(INTEL, FM10K_DEV_ID_VF), fm10k_device_vf },
 	/* required last entry */
 	{ 0, }
diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_type.h b/drivers/net/ethernet/intel/fm10k/fm10k_type.h
index 3e608e493f9d..9fb9fca375e3 100644
--- a/drivers/net/ethernet/intel/fm10k/fm10k_type.h
+++ b/drivers/net/ethernet/intel/fm10k/fm10k_type.h
@@ -15,6 +15,8 @@ struct fm10k_hw;
 
 #define FM10K_DEV_ID_PF			0x15A4
 #define FM10K_DEV_ID_VF			0x15A5
+#define FM10K_DEV_ID_SDI_FM10420_QDA2	0x15D0
+#define FM10K_DEV_ID_SDI_FM10420_DA2	0x15D5
 
 #define FM10K_MAX_QUEUES		256
 #define FM10K_MAX_QUEUES_PF		128
-- 
2.17.2

^ permalink raw reply related

* [net 5/8] fm10k: bump driver version to match out-of-tree release
From: Jeff Kirsher @ 2018-10-31 19:42 UTC (permalink / raw)
  To: davem; +Cc: Jacob Keller, netdev, nhorman, sassmann, Jeff Kirsher
In-Reply-To: <20181031194254.16417-1-jeffrey.t.kirsher@intel.com>

From: Jacob Keller <jacob.e.keller@intel.com>

The upstream and out-of-tree drivers are once again at comparable
functionality. It's been a while since we updated the upstream driver
version, so bump it now.

Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/fm10k/fm10k_main.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/intel/fm10k/fm10k_main.c b/drivers/net/ethernet/intel/fm10k/fm10k_main.c
index 503bbc017792..5b2a50e5798f 100644
--- a/drivers/net/ethernet/intel/fm10k/fm10k_main.c
+++ b/drivers/net/ethernet/intel/fm10k/fm10k_main.c
@@ -11,7 +11,7 @@
 
 #include "fm10k.h"
 
-#define DRV_VERSION	"0.23.4-k"
+#define DRV_VERSION	"0.26.1-k"
 #define DRV_SUMMARY	"Intel(R) Ethernet Switch Host Interface Driver"
 const char fm10k_driver_version[] = DRV_VERSION;
 char fm10k_driver_name[] = "fm10k";
-- 
2.17.2

^ permalink raw reply related

* [net 6/8] ixgbe/ixgbevf: fix XFRM_ALGO dependency
From: Jeff Kirsher @ 2018-10-31 19:42 UTC (permalink / raw)
  To: davem
  Cc: Jeff Kirsher, netdev, nhorman, sassmann, Arnd Bergmann,
	Shannon Nelson
In-Reply-To: <20181031194254.16417-1-jeffrey.t.kirsher@intel.com>

Based on the original work from Arnd Bergmann.

When XFRM_ALGO is not enabled, the new ixgbe IPsec code produces a
link error:

drivers/net/ethernet/intel/ixgbe/ixgbe_ipsec.o: In function `ixgbe_ipsec_vf_add_sa':
ixgbe_ipsec.c:(.text+0x1266): undefined reference to `xfrm_aead_get_byname'

Simply selecting XFRM_ALGO from here causes circular dependencies, so
to fix it, we probably want this slightly more complex solution that is
similar to what other drivers with XFRM offload do:

A separate Kconfig symbol now controls whether we include the IPsec
offload code. To keep the old behavior, this is left as 'default y'. The
dependency in XFRM_OFFLOAD still causes a circular dependency but is
not actually needed because this symbol is not user visible, so removing
that dependency on top makes it all work.

CC: Arnd Bergmann <arnd@arndb.de>
CC: Shannon Nelson <shannon.nelson@oracle.com>
Fixes: eda0333ac293 ("ixgbe: add VF IPsec management")
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
---
 drivers/net/ethernet/intel/Kconfig             | 18 ++++++++++++++++++
 drivers/net/ethernet/intel/ixgbe/Makefile      |  2 +-
 drivers/net/ethernet/intel/ixgbe/ixgbe.h       |  8 ++++----
 drivers/net/ethernet/intel/ixgbe/ixgbe_main.c  |  6 +++---
 drivers/net/ethernet/intel/ixgbevf/Makefile    |  2 +-
 drivers/net/ethernet/intel/ixgbevf/ixgbevf.h   |  4 ++--
 .../net/ethernet/intel/ixgbevf/ixgbevf_main.c  |  2 +-
 net/xfrm/Kconfig                               |  1 -
 8 files changed, 30 insertions(+), 13 deletions(-)

diff --git a/drivers/net/ethernet/intel/Kconfig b/drivers/net/ethernet/intel/Kconfig
index fd3373d82a9e..59e1bc0f609e 100644
--- a/drivers/net/ethernet/intel/Kconfig
+++ b/drivers/net/ethernet/intel/Kconfig
@@ -200,6 +200,15 @@ config IXGBE_DCB
 
 	  If unsure, say N.
 
+config IXGBE_IPSEC
+	bool "IPSec XFRM cryptography-offload acceleration"
+	depends on IXGBE
+	depends on XFRM_OFFLOAD
+	default y
+	select XFRM_ALGO
+	---help---
+	  Enable support for IPSec offload in ixgbe.ko
+
 config IXGBEVF
 	tristate "Intel(R) 10GbE PCI Express Virtual Function Ethernet support"
 	depends on PCI_MSI
@@ -217,6 +226,15 @@ config IXGBEVF
 	  will be called ixgbevf.  MSI-X interrupt support is required
 	  for this driver to work correctly.
 
+config IXGBEVF_IPSEC
+	bool "IPSec XFRM cryptography-offload acceleration"
+	depends on IXGBEVF
+	depends on XFRM_OFFLOAD
+	default y
+	select XFRM_ALGO
+	---help---
+	  Enable support for IPSec offload in ixgbevf.ko
+
 config I40E
 	tristate "Intel(R) Ethernet Controller XL710 Family support"
 	imply PTP_1588_CLOCK
diff --git a/drivers/net/ethernet/intel/ixgbe/Makefile b/drivers/net/ethernet/intel/ixgbe/Makefile
index ca6b0c458e4a..4fb0d9e3f2da 100644
--- a/drivers/net/ethernet/intel/ixgbe/Makefile
+++ b/drivers/net/ethernet/intel/ixgbe/Makefile
@@ -17,4 +17,4 @@ ixgbe-$(CONFIG_IXGBE_DCB) +=  ixgbe_dcb.o ixgbe_dcb_82598.o \
 ixgbe-$(CONFIG_IXGBE_HWMON) += ixgbe_sysfs.o
 ixgbe-$(CONFIG_DEBUG_FS) += ixgbe_debugfs.o
 ixgbe-$(CONFIG_FCOE:m=y) += ixgbe_fcoe.o
-ixgbe-$(CONFIG_XFRM_OFFLOAD) += ixgbe_ipsec.o
+ixgbe-$(CONFIG_IXGBE_IPSEC) += ixgbe_ipsec.o
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe.h b/drivers/net/ethernet/intel/ixgbe/ixgbe.h
index ec1b87cc4410..143bdd5ee2a0 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe.h
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe.h
@@ -769,9 +769,9 @@ struct ixgbe_adapter {
 #define IXGBE_RSS_KEY_SIZE     40  /* size of RSS Hash Key in bytes */
 	u32 *rss_key;
 
-#ifdef CONFIG_XFRM_OFFLOAD
+#ifdef CONFIG_IXGBE_IPSEC
 	struct ixgbe_ipsec *ipsec;
-#endif /* CONFIG_XFRM_OFFLOAD */
+#endif /* CONFIG_IXGBE_IPSEC */
 
 	/* AF_XDP zero-copy */
 	struct xdp_umem **xsk_umems;
@@ -1008,7 +1008,7 @@ void ixgbe_store_key(struct ixgbe_adapter *adapter);
 void ixgbe_store_reta(struct ixgbe_adapter *adapter);
 s32 ixgbe_negotiate_fc(struct ixgbe_hw *hw, u32 adv_reg, u32 lp_reg,
 		       u32 adv_sym, u32 adv_asm, u32 lp_sym, u32 lp_asm);
-#ifdef CONFIG_XFRM_OFFLOAD
+#ifdef CONFIG_IXGBE_IPSEC
 void ixgbe_init_ipsec_offload(struct ixgbe_adapter *adapter);
 void ixgbe_stop_ipsec_offload(struct ixgbe_adapter *adapter);
 void ixgbe_ipsec_restore(struct ixgbe_adapter *adapter);
@@ -1036,5 +1036,5 @@ static inline int ixgbe_ipsec_vf_add_sa(struct ixgbe_adapter *adapter,
 					u32 *mbuf, u32 vf) { return -EACCES; }
 static inline int ixgbe_ipsec_vf_del_sa(struct ixgbe_adapter *adapter,
 					u32 *mbuf, u32 vf) { return -EACCES; }
-#endif /* CONFIG_XFRM_OFFLOAD */
+#endif /* CONFIG_IXGBE_IPSEC */
 #endif /* _IXGBE_H_ */
diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
index 0049a2becd7e..113b38e0defb 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_main.c
@@ -8694,7 +8694,7 @@ netdev_tx_t ixgbe_xmit_frame_ring(struct sk_buff *skb,
 
 #endif /* IXGBE_FCOE */
 
-#ifdef CONFIG_XFRM_OFFLOAD
+#ifdef CONFIG_IXGBE_IPSEC
 	if (skb->sp && !ixgbe_ipsec_tx(tx_ring, first, &ipsec_tx))
 		goto out_drop;
 #endif
@@ -10190,7 +10190,7 @@ ixgbe_features_check(struct sk_buff *skb, struct net_device *dev,
 	 * the TSO, so it's the exception.
 	 */
 	if (skb->encapsulation && !(features & NETIF_F_TSO_MANGLEID)) {
-#ifdef CONFIG_XFRM_OFFLOAD
+#ifdef CONFIG_IXGBE_IPSEC
 		if (!skb->sp)
 #endif
 			features &= ~NETIF_F_TSO;
@@ -10883,7 +10883,7 @@ static int ixgbe_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
 	if (hw->mac.type >= ixgbe_mac_82599EB)
 		netdev->features |= NETIF_F_SCTP_CRC;
 
-#ifdef CONFIG_XFRM_OFFLOAD
+#ifdef CONFIG_IXGBE_IPSEC
 #define IXGBE_ESP_FEATURES	(NETIF_F_HW_ESP | \
 				 NETIF_F_HW_ESP_TX_CSUM | \
 				 NETIF_F_GSO_ESP)
diff --git a/drivers/net/ethernet/intel/ixgbevf/Makefile b/drivers/net/ethernet/intel/ixgbevf/Makefile
index 297d0f0858b5..186a4bb24fde 100644
--- a/drivers/net/ethernet/intel/ixgbevf/Makefile
+++ b/drivers/net/ethernet/intel/ixgbevf/Makefile
@@ -10,5 +10,5 @@ ixgbevf-objs := vf.o \
                 mbx.o \
                 ethtool.o \
                 ixgbevf_main.o
-ixgbevf-$(CONFIG_XFRM_OFFLOAD) += ipsec.o
+ixgbevf-$(CONFIG_IXGBEVF_IPSEC) += ipsec.o
 
diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
index e399e1c0c54a..ecab686574b6 100644
--- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
+++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf.h
@@ -459,7 +459,7 @@ int ethtool_ioctl(struct ifreq *ifr);
 
 extern void ixgbevf_write_eitr(struct ixgbevf_q_vector *q_vector);
 
-#ifdef CONFIG_XFRM_OFFLOAD
+#ifdef CONFIG_IXGBEVF_IPSEC
 void ixgbevf_init_ipsec_offload(struct ixgbevf_adapter *adapter);
 void ixgbevf_stop_ipsec_offload(struct ixgbevf_adapter *adapter);
 void ixgbevf_ipsec_restore(struct ixgbevf_adapter *adapter);
@@ -482,7 +482,7 @@ static inline int ixgbevf_ipsec_tx(struct ixgbevf_ring *tx_ring,
 				   struct ixgbevf_tx_buffer *first,
 				   struct ixgbevf_ipsec_tx_data *itd)
 { return 0; }
-#endif /* CONFIG_XFRM_OFFLOAD */
+#endif /* CONFIG_IXGBEVF_IPSEC */
 
 void ixgbe_napi_add_all(struct ixgbevf_adapter *adapter);
 void ixgbe_napi_del_all(struct ixgbevf_adapter *adapter);
diff --git a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
index 98707ee11d72..5e47ede7e832 100644
--- a/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
+++ b/drivers/net/ethernet/intel/ixgbevf/ixgbevf_main.c
@@ -4150,7 +4150,7 @@ static int ixgbevf_xmit_frame_ring(struct sk_buff *skb,
 	first->tx_flags = tx_flags;
 	first->protocol = vlan_get_protocol(skb);
 
-#ifdef CONFIG_XFRM_OFFLOAD
+#ifdef CONFIG_IXGBEVF_IPSEC
 	if (skb->sp && !ixgbevf_ipsec_tx(tx_ring, first, &ipsec_tx))
 		goto out_drop;
 #endif
diff --git a/net/xfrm/Kconfig b/net/xfrm/Kconfig
index 4a9ee2d83158..140270a13d54 100644
--- a/net/xfrm/Kconfig
+++ b/net/xfrm/Kconfig
@@ -8,7 +8,6 @@ config XFRM
 
 config XFRM_OFFLOAD
        bool
-       depends on XFRM
 
 config XFRM_ALGO
 	tristate
-- 
2.17.2

^ permalink raw reply related

* [net 8/8] ixgbe: fix MAC anti-spoofing filter after VFLR
From: Jeff Kirsher @ 2018-10-31 19:42 UTC (permalink / raw)
  To: davem; +Cc: Radoslaw Tyl, netdev, nhorman, sassmann, Jeff Kirsher
In-Reply-To: <20181031194254.16417-1-jeffrey.t.kirsher@intel.com>

From: Radoslaw Tyl <radoslawx.tyl@intel.com>

This change resolves a driver bug where the driver is logging a
message that says "Spoofed packets detected". This can occur on the PF
(host) when a VF has VLAN+MACVLAN enabled and is re-started with a
different MAC address.

MAC and VLAN anti-spoofing filters are to be enabled together.

Signed-off-by: Radoslaw Tyl <radoslawx.tyl@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Acked-by: Piotr Skajewski <piotrx.skajewski@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
---
 drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c b/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c
index af25a8fffeb8..5dacfc870259 100644
--- a/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c
+++ b/drivers/net/ethernet/intel/ixgbe/ixgbe_sriov.c
@@ -722,8 +722,10 @@ static inline void ixgbe_vf_reset_event(struct ixgbe_adapter *adapter, u32 vf)
 			ixgbe_set_vmvir(adapter, vfinfo->pf_vlan,
 					adapter->default_up, vf);
 
-		if (vfinfo->spoofchk_enabled)
+		if (vfinfo->spoofchk_enabled) {
 			hw->mac.ops.set_vlan_anti_spoofing(hw, true, vf);
+			hw->mac.ops.set_mac_anti_spoofing(hw, true, vf);
+		}
 	}
 
 	/* reset multicast table array for vf */
-- 
2.17.2

^ permalink raw reply related

* Re: [PATCH net] net: dsa: microchip: initialize mutex before use
From: David Miller @ 2018-10-31 19:52 UTC (permalink / raw)
  To: Tristram.Ha; +Cc: andrew, f.fainelli, pavel, UNGLinuxDriver, netdev
In-Reply-To: <1540943149-26832-1-git-send-email-Tristram.Ha@microchip.com>

From: <Tristram.Ha@microchip.com>
Date: Tue, 30 Oct 2018 16:45:49 -0700

> @@ -1206,6 +1201,12 @@ int ksz_switch_register(struct ksz_device *dev)
>  	if (dev->pdata)
>  		dev->chip_id = dev->pdata->chip_id;
>  
> +	/* mutex is used in next function call. */
> +	mutex_init(&dev->reg_mutex);
> +	mutex_init(&dev->stats_mutex);
> +	mutex_init(&dev->alu_mutex);
> +	mutex_init(&dev->vlan_mutex);
> +

Please remove this comment, as per Andrew Lunn's feedback.

^ permalink raw reply

* Re: [PATCH net 0/4] mlxsw: Enable minimum shaper on MC TCs
From: David Miller @ 2018-10-31 19:57 UTC (permalink / raw)
  To: idosch; +Cc: netdev, jiri, petrm, mlxsw
In-Reply-To: <20181031095601.29846-1-idosch@mellanox.com>

From: Ido Schimmel <idosch@mellanox.com>
Date: Wed, 31 Oct 2018 09:56:41 +0000

> Petr says:
> 
> An MC-aware mode was introduced in commit 7b8195306694 ("mlxsw:
> spectrum: Configure MC-aware mode on mlxsw ports"). In MC-aware mode,
> BUM traffic gets a special treatment by being assigned to a separate set
> of traffic classes 8..15. Pairs of TCs 0 and 8, 1 and 9, etc., are then
> configured to strictly prioritize the lower-numbered ones. The intention
> is to prevent BUM traffic from flooding the switch and push out all UC
> traffic, which would otherwise happen, and instead give UC traffic
> precedence.
> 
> However strictly prioritizing UC traffic has the effect that UC overload
> pushes out all BUM traffic, such as legitimate ARP queries. These
> packets are kept in queues for a while, but under sustained UC overload,
> their lifetime eventually expires and these packets are dropped. That is
> detrimental to network performance as well.
> 
> In this patchset, MC TCs (8..15) are configured with minimum shaper of
> 200Mbps (a minimum permitted value) to allow a trickle of necessary
> control traffic to get through.
> 
> First in patch #1, the QEEC register is extended with fields necessary
> to configure the minimum shaper.
> 
> In patch #2, minimum shaper is enabled on TCs 8..15.
> 
> In patches #3 and #4, first the MC-awareness test is tweaked to support
> the minimum shaper, and then a new test is introduced to test that MC
> traffic behaves well under UC overload.

Series applied, thanks.

^ permalink raw reply

* [PATCH bpf] libbpf: Fix compile error in libbpf_attach_type_by_name
From: Andrey Ignatov @ 2018-10-31 19:57 UTC (permalink / raw)
  To: netdev; +Cc: Andrey Ignatov, ast, daniel, kernel-team, acme

Arnaldo Carvalho de Melo reported build error in libbpf when clang
version 3.8.1-24 (tags/RELEASE_381/final) is used:

libbpf.c:2201:36: error: comparison of constant -22 with expression of
type 'const enum bpf_attach_type' is always false
[-Werror,-Wtautological-constant-out-of-range-compare]
                if (section_names[i].attach_type == -EINVAL)
                    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^  ~~~~~~~
1 error generated.

Fix the error by keeping "is_attachable" property of a program in a
separate struct field instead of trying to use attach_type itself.

Fixes: commit 956b620fcf0b ("libbpf: Introduce libbpf_attach_type_by_name")
Reported-by: Arnaldo Carvalho de Melo <acme@kernel.org>
Signed-off-by: Andrey Ignatov <rdna@fb.com>
---
 tools/lib/bpf/libbpf.c | 13 +++++++------
 1 file changed, 7 insertions(+), 6 deletions(-)

diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c
index b607be7236d3..d6e62e90e8d4 100644
--- a/tools/lib/bpf/libbpf.c
+++ b/tools/lib/bpf/libbpf.c
@@ -2084,19 +2084,19 @@ void bpf_program__set_expected_attach_type(struct bpf_program *prog,
 	prog->expected_attach_type = type;
 }
 
-#define BPF_PROG_SEC_IMPL(string, ptype, eatype, atype) \
-	{ string, sizeof(string) - 1, ptype, eatype, atype }
+#define BPF_PROG_SEC_IMPL(string, ptype, eatype, is_attachable, atype) \
+	{ string, sizeof(string) - 1, ptype, eatype, is_attachable, atype }
 
 /* Programs that can NOT be attached. */
-#define BPF_PROG_SEC(string, ptype) BPF_PROG_SEC_IMPL(string, ptype, 0, -EINVAL)
+#define BPF_PROG_SEC(string, ptype) BPF_PROG_SEC_IMPL(string, ptype, 0, 0, 0)
 
 /* Programs that can be attached. */
 #define BPF_APROG_SEC(string, ptype, atype) \
-	BPF_PROG_SEC_IMPL(string, ptype, 0, atype)
+	BPF_PROG_SEC_IMPL(string, ptype, 0, 1, atype)
 
 /* Programs that must specify expected attach type at load time. */
 #define BPF_EAPROG_SEC(string, ptype, eatype) \
-	BPF_PROG_SEC_IMPL(string, ptype, eatype, eatype)
+	BPF_PROG_SEC_IMPL(string, ptype, eatype, 1, eatype)
 
 /* Programs that can be attached but attach type can't be identified by section
  * name. Kept for backward compatibility.
@@ -2108,6 +2108,7 @@ static const struct {
 	size_t len;
 	enum bpf_prog_type prog_type;
 	enum bpf_attach_type expected_attach_type;
+	int is_attachable;
 	enum bpf_attach_type attach_type;
 } section_names[] = {
 	BPF_PROG_SEC("socket",			BPF_PROG_TYPE_SOCKET_FILTER),
@@ -2198,7 +2199,7 @@ int libbpf_attach_type_by_name(const char *name,
 	for (i = 0; i < ARRAY_SIZE(section_names); i++) {
 		if (strncmp(name, section_names[i].sec, section_names[i].len))
 			continue;
-		if (section_names[i].attach_type == -EINVAL)
+		if (!section_names[i].is_attachable)
 			return -EINVAL;
 		*attach_type = section_names[i].attach_type;
 		return 0;
-- 
2.17.1

^ permalink raw reply related

* Re: [PATCH net] openvswitch: Fix push/pop ethernet validation
From: Gregory Rose @ 2018-10-31 20:13 UTC (permalink / raw)
  To: Jaime Caamaño Ruiz, netdev; +Cc: pshelar
In-Reply-To: <20181031175203.23808-1-jcaamano@suse.com>

On 10/31/2018 10:52 AM, Jaime Caamaño Ruiz wrote:
> When there are both pop and push ethernet header actions among the
> actions to be applied to a packet, an unexpected EINVAL (Invalid
> argument) error is obtained. This is due to mac_proto not being reset
> correctly when those actions are validated.
>
> Reported-at:
> https://mail.openvswitch.org/pipermail/ovs-discuss/2018-October/047554.html
> Fixes: 91820da6ae85 ("openvswitch: add Ethernet push and pop actions")
> Signed-off-by: Jaime Caamaño Ruiz <jcaamano@suse.com>
> ---
>   net/openvswitch/flow_netlink.c | 4 ++--
>   1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/net/openvswitch/flow_netlink.c b/net/openvswitch/flow_netlink.c
> index a70097ecf33c..865ecef68196 100644
> --- a/net/openvswitch/flow_netlink.c
> +++ b/net/openvswitch/flow_netlink.c
> @@ -3030,7 +3030,7 @@ static int __ovs_nla_copy_actions(struct net *net, const struct nlattr *attr,
>   			 * is already present */
>   			if (mac_proto != MAC_PROTO_NONE)
>   				return -EINVAL;
> -			mac_proto = MAC_PROTO_NONE;
> +			mac_proto = MAC_PROTO_ETHERNET;
>   			break;
>   
>   		case OVS_ACTION_ATTR_POP_ETH:
> @@ -3038,7 +3038,7 @@ static int __ovs_nla_copy_actions(struct net *net, const struct nlattr *attr,
>   				return -EINVAL;
>   			if (vlan_tci & htons(VLAN_TAG_PRESENT))
>   				return -EINVAL;
> -			mac_proto = MAC_PROTO_ETHERNET;
> +			mac_proto = MAC_PROTO_NONE;
>   			break;
>   
>   		case OVS_ACTION_ATTR_PUSH_NSH:

Thanks Jaime!

Tested-by: Greg Rose <gvrose8192@gmail.com>
Reviewed-by: Greg Rose <gvrose8192@gmail.com>

^ permalink raw reply

* Re: [PATCH v2 1/2] kretprobe: produce sane stack traces
From: kbuild test robot @ 2018-10-31 20:18 UTC (permalink / raw)
  To: Aleksa Sarai
  Cc: kbuild-all, Naveen N. Rao, Anil S Keshavamurthy, David S. Miller,
	Masami Hiramatsu, Jonathan Corbet, Peter Zijlstra, Ingo Molnar,
	Arnaldo Carvalho de Melo, Alexander Shishkin, Jiri Olsa,
	Namhyung Kim, Steven Rostedt, Shuah Khan, Alexei Starovoitov,
	Daniel Borkmann, Aleksa Sarai, Brendan Gregg, Christian Brauner,
	Aleksa 
In-Reply-To: <20181031152543.12138-2-cyphar@cyphar.com>

[-- Attachment #1: Type: text/plain, Size: 3347 bytes --]

Hi Aleksa,

Thank you for the patch! Yet something to improve:

[auto build test ERROR on tip/perf/core]
[also build test ERROR on v4.19 next-20181031]
[if your patch is applied to the wrong git tree, please drop us a note to help improve the system]

url:    https://github.com/0day-ci/linux/commits/Aleksa-Sarai/kretprobe-produce-sane-stack-traces/20181101-034104
config: i386-tinyconfig (attached as .config)
compiler: gcc-7 (Debian 7.3.0-1) 7.3.0
reproduce:
        # save the attached .config to linux build tree
        make ARCH=i386 

All error/warnings (new ones prefixed by >>):

   kernel/events/callchain.c: In function 'get_perf_callchain':
>> kernel/events/callchain.c:201:35: error: implicit declaration of function 'current_kretprobe_instance'; did you mean 'current_top_of_stack'? [-Werror=implicit-function-declaration]
      struct kretprobe_instance *ri = current_kretprobe_instance();
                                      ^~~~~~~~~~~~~~~~~~~~~~~~~~
                                      current_top_of_stack
>> kernel/events/callchain.c:201:35: warning: initialization makes pointer from integer without a cast [-Wint-conversion]
>> kernel/events/callchain.c:206:4: error: implicit declaration of function 'kretprobe_perf_callchain_kernel'; did you mean 'perf_callchain_kernel'? [-Werror=implicit-function-declaration]
       kretprobe_perf_callchain_kernel(ri, &ctx);
       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
       perf_callchain_kernel
   cc1: some warnings being treated as errors

vim +201 kernel/events/callchain.c

   178	
   179	struct perf_callchain_entry *
   180	get_perf_callchain(struct pt_regs *regs, u32 init_nr, bool kernel, bool user,
   181			   u32 max_stack, bool crosstask, bool add_mark)
   182	{
   183		struct perf_callchain_entry *entry;
   184		struct perf_callchain_entry_ctx ctx;
   185		int rctx;
   186	
   187		entry = get_callchain_entry(&rctx);
   188		if (rctx == -1)
   189			return NULL;
   190	
   191		if (!entry)
   192			goto exit_put;
   193	
   194		ctx.entry     = entry;
   195		ctx.max_stack = max_stack;
   196		ctx.nr	      = entry->nr = init_nr;
   197		ctx.contexts       = 0;
   198		ctx.contexts_maxed = false;
   199	
   200		if (kernel && !user_mode(regs)) {
 > 201			struct kretprobe_instance *ri = current_kretprobe_instance();
   202	
   203			if (add_mark)
   204				perf_callchain_store_context(&ctx, PERF_CONTEXT_KERNEL);
   205			if (ri)
 > 206				kretprobe_perf_callchain_kernel(ri, &ctx);
   207			else
   208				perf_callchain_kernel(&ctx, regs);
   209		}
   210	
   211		if (user) {
   212			if (!user_mode(regs)) {
   213				if  (current->mm)
   214					regs = task_pt_regs(current);
   215				else
   216					regs = NULL;
   217			}
   218	
   219			if (regs) {
   220				mm_segment_t fs;
   221	
   222				if (crosstask)
   223					goto exit_put;
   224	
   225				if (add_mark)
   226					perf_callchain_store_context(&ctx, PERF_CONTEXT_USER);
   227	
   228				fs = get_fs();
   229				set_fs(USER_DS);
   230				perf_callchain_user(&ctx, regs);
   231				set_fs(fs);
   232			}
   233		}
   234	
   235	exit_put:
   236		put_callchain_entry(rctx);
   237	
   238		return entry;
   239	}
   240	

---
0-DAY kernel test infrastructure                Open Source Technology Center
https://lists.01.org/pipermail/kbuild-all                   Intel Corporation

[-- Attachment #2: .config.gz --]
[-- Type: application/gzip, Size: 6493 bytes --]

^ permalink raw reply

* Re: [PATCH bpf] libbpf: Fix compile error in libbpf_attach_type_by_name
From: Arnaldo Carvalho de Melo @ 2018-10-31 20:49 UTC (permalink / raw)
  To: Andrey Ignatov; +Cc: netdev, ast, daniel, kernel-team
In-Reply-To: <20181031195718.307757-1-rdna@fb.com>

Em Wed, Oct 31, 2018 at 12:57:18PM -0700, Andrey Ignatov escreveu:
> Arnaldo Carvalho de Melo reported build error in libbpf when clang
> version 3.8.1-24 (tags/RELEASE_381/final) is used:
> 
> libbpf.c:2201:36: error: comparison of constant -22 with expression of
> type 'const enum bpf_attach_type' is always false
> [-Werror,-Wtautological-constant-out-of-range-compare]
>                 if (section_names[i].attach_type == -EINVAL)
>                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^  ~~~~~~~
> 1 error generated.
> 
> Fix the error by keeping "is_attachable" property of a program in a
> separate struct field instead of trying to use attach_type itself.

Thanks, now it builds in all the previously failing systems:

# export PERF_TARBALL=http://192.168.86.4/perf/perf-4.19.0.tar.xz
# dm debian:9 fedora:25 fedora:26 fedora:27 ubuntu:16.04 ubuntu:17.10
   1 debian:9        : Ok   gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516          clang version 3.8.1-24 (tags/RELEASE_381/final)
   2 fedora:25       : Ok   gcc (GCC) 6.4.1 20170727 (Red Hat 6.4.1-1)           clang version 3.9.1 (tags/RELEASE_391/final)
   3 fedora:26       : Ok   gcc (GCC) 7.3.1 20180130 (Red Hat 7.3.1-2)           clang version 4.0.1 (tags/RELEASE_401/final)
   4 fedora:27       : Ok   gcc (GCC) 7.3.1 20180712 (Red Hat 7.3.1-6)           clang version 5.0.2 (tags/RELEASE_502/final)
   5 ubuntu:16.04    : Ok   gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609  clang version 3.8.0-2ubuntu4 (tags/RELEASE_380/final)
   6 ubuntu:17.10    : Ok   gcc (Ubuntu 7.2.0-8ubuntu3.2) 7.2.0                  clang version 4.0.1-6 (tags/RELEASE_401/final)
#

Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>

I also have it tentatively applied to my perf/urgent branch, that I'll
push upstream soon.

- Arnaldo
 
> Fixes: commit 956b620fcf0b ("libbpf: Introduce libbpf_attach_type_by_name")
> Reported-by: Arnaldo Carvalho de Melo <acme@kernel.org>
> Signed-off-by: Andrey Ignatov <rdna@fb.com>
> ---
>  tools/lib/bpf/libbpf.c | 13 +++++++------
>  1 file changed, 7 insertions(+), 6 deletions(-)
> 
> diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c
> index b607be7236d3..d6e62e90e8d4 100644
> --- a/tools/lib/bpf/libbpf.c
> +++ b/tools/lib/bpf/libbpf.c
> @@ -2084,19 +2084,19 @@ void bpf_program__set_expected_attach_type(struct bpf_program *prog,
>  	prog->expected_attach_type = type;
>  }
>  
> -#define BPF_PROG_SEC_IMPL(string, ptype, eatype, atype) \
> -	{ string, sizeof(string) - 1, ptype, eatype, atype }
> +#define BPF_PROG_SEC_IMPL(string, ptype, eatype, is_attachable, atype) \
> +	{ string, sizeof(string) - 1, ptype, eatype, is_attachable, atype }
>  
>  /* Programs that can NOT be attached. */
> -#define BPF_PROG_SEC(string, ptype) BPF_PROG_SEC_IMPL(string, ptype, 0, -EINVAL)
> +#define BPF_PROG_SEC(string, ptype) BPF_PROG_SEC_IMPL(string, ptype, 0, 0, 0)
>  
>  /* Programs that can be attached. */
>  #define BPF_APROG_SEC(string, ptype, atype) \
> -	BPF_PROG_SEC_IMPL(string, ptype, 0, atype)
> +	BPF_PROG_SEC_IMPL(string, ptype, 0, 1, atype)
>  
>  /* Programs that must specify expected attach type at load time. */
>  #define BPF_EAPROG_SEC(string, ptype, eatype) \
> -	BPF_PROG_SEC_IMPL(string, ptype, eatype, eatype)
> +	BPF_PROG_SEC_IMPL(string, ptype, eatype, 1, eatype)
>  
>  /* Programs that can be attached but attach type can't be identified by section
>   * name. Kept for backward compatibility.
> @@ -2108,6 +2108,7 @@ static const struct {
>  	size_t len;
>  	enum bpf_prog_type prog_type;
>  	enum bpf_attach_type expected_attach_type;
> +	int is_attachable;
>  	enum bpf_attach_type attach_type;
>  } section_names[] = {
>  	BPF_PROG_SEC("socket",			BPF_PROG_TYPE_SOCKET_FILTER),
> @@ -2198,7 +2199,7 @@ int libbpf_attach_type_by_name(const char *name,
>  	for (i = 0; i < ARRAY_SIZE(section_names); i++) {
>  		if (strncmp(name, section_names[i].sec, section_names[i].len))
>  			continue;
> -		if (section_names[i].attach_type == -EINVAL)
> +		if (!section_names[i].is_attachable)
>  			return -EINVAL;
>  		*attach_type = section_names[i].attach_type;
>  		return 0;
> -- 
> 2.17.1

^ permalink raw reply

* Re: Latest net-next kernel 4.19.0+
From: Saeed Mahameed @ 2018-10-31 21:05 UTC (permalink / raw)
  To: eric.dumazet@gmail.com, xiyou.wangcong@gmail.com
  Cc: pstaszewski@itcare.pl, netdev@vger.kernel.org,
	dmichail@google.com
In-Reply-To: <CAM_iQpUKTh51maAzht8M3LuJAYDRMRnsGn_+Db0rGG-scW2SnA@mail.gmail.com>

On Tue, 2018-10-30 at 10:32 -0700, Cong Wang wrote:
> On Tue, Oct 30, 2018 at 7:16 AM Eric Dumazet <eric.dumazet@gmail.com>
> wrote:
> > 
> > 
> > 
> > On 10/30/2018 01:09 AM, Paweł Staszewski wrote:
> > > 
> > > 
> > > W dniu 30.10.2018 o 08:29, Eric Dumazet pisze:
> > > > 
> > > > On 10/29/2018 11:09 PM, Dimitris Michailidis wrote:
> > > > 
> > > > > Indeed this is a bug. I would expect it to produce frequent
> > > > > errors
> > > > > though as many odd-length
> > > > > packets would trigger it. Do you have RXFCS? Regardless, how
> > > > > frequently do you see the problem?
> > > > > 
> > > > 
> > > > Old kernels (before 88078d98d1bb) were simply resetting
> > > > ip_summed to CHECKSUM_NONE
> > > > 
> > > > And before your fix (commit d55bef5059dd057bd), mlx5 bug was
> > > > canceling the bug you fixed.
> > > > 
> > > > So we now need to also fix mlx5.
> > > > 
> > > > And of course use skb_header_pointer() in mlx5e_get_fcs() as I
> > > > mentioned earlier,
> > > > plus __get_unaligned_cpu32() as you hinted.
> > > > 
> > > > 
> > > > 
> > > > 
> > > 
> > > No RXFCS
> 
> 
> Same with Pawel, RXFCS is disabled by default.
> 
> 
> > > 
> > > And this trace is rly frequently like once per 3/4 seconds
> > > like below:
> > > [28965.776864] vlan1490: hw csum failure
> > 
> > Might be vlan related.
> 

Hi Pawel, is the vlan stripping offload disabled or enabled in your
case ? 

To verify:
ethtool -k <interface> | grep rx-vlan-offload
rx-vlan-offload: on
To set:
ethtool -K <interface> rxvlan on/off

if the vlan offload is off then it will trigger the mlx5e vlan csum
adjustment code pointed out by Eric.

Anyhow, it should work in both cases, but i am trying to narrow down
the possibilities. 

Also could it be a double tagged packet ?


> Unlike Pawel's case, we don't use vlan at all, maybe this is why we
> see
> it much less frequently than Pawel.
> 
> Also, it is probably not specific to mlx5, as there is another report
> which
> is probably a non-mlx5 driver.
> 

Cong, How often does this happen ? can you some how verify if the
problematic packet has extra end padding after the ip payload ?

It would be cool if we had a feature in kernel to store such SKB in
memory when such issue occurs, and let the user dump it later (via
tcpdump) and send the dump to the vendor for debug so we could just
replay and see what happens.

> Thanks.

^ permalink raw reply

* Re: [RFC PATCH 4/4] ixgbe: add support for extended PHC gettime
From: Richard Cochran @ 2018-10-31 21:16 UTC (permalink / raw)
  To: Miroslav Lichvar
  Cc: Keller, Jacob E, netdev@vger.kernel.org,
	intel-wired-lan@lists.osuosl.org
In-Reply-To: <20181031144935.GR31668@localhost>

On Wed, Oct 31, 2018 at 03:49:35PM +0100, Miroslav Lichvar wrote:
> 
> How about separating the PHC timestamp from the ptp_system_timestamp
> structure and use NULL to indicate we don't want to read the system
> clock? A gettimex64(ptp, ts, NULL) call would be equal to
> gettime64(ptp, ts).

Doesn't sound too bad to me.

Thanks,
Richard

^ permalink raw reply

* Re: Latest net-next kernel 4.19.0+
From: Cong Wang @ 2018-10-31 21:17 UTC (permalink / raw)
  To: Saeed Mahameed
  Cc: Eric Dumazet, Paweł Staszewski,
	Linux Kernel Network Developers, dmichail
In-Reply-To: <7f19ab59f1bbfe74cf3d056ccd9adf556cd09f60.camel@mellanox.com>

On Wed, Oct 31, 2018 at 2:05 PM Saeed Mahameed <saeedm@mellanox.com> wrote:
>
> Cong, How often does this happen ? can you some how verify if the
> problematic packet has extra end padding after the ip payload ?

For us, we need 10+ hours to get one warning. This is also
why we never capture the packet that causes this warning.


>
> It would be cool if we had a feature in kernel to store such SKB in
> memory when such issue occurs, and let the user dump it later (via
> tcpdump) and send the dump to the vendor for debug so we could just
> replay and see what happens.
>

Yeah, the warning kinda sucks, it tells almost nothing, the SKB
should be dumped up on this warning.

^ permalink raw reply

* Re: [RFC PATCH] lib: Introduce generic __cmpxchg_u64() and use it where needed
From: Trond Myklebust @ 2018-11-01  6:30 UTC (permalink / raw)
  To: linux@roeck-us.net, paul.burton@mips.com
  Cc: linux-kernel@vger.kernel.org, ralf@linux-mips.org,
	jlayton@kernel.org, linuxppc-dev@lists.ozlabs.org,
	bfields@fieldses.org, linux-mips@linux-mips.org,
	linux-nfs@vger.kernel.org, akpm@linux-foundation.org,
	anna.schumaker@netapp.com, jhogan@kernel.org,
	netdev@vger.kernel.org, davem@davemloft.net, arnd@arndb.de,
	paulus@samba.org, mpe@ellerman.id.au,
	"benh@kernel.crashing.org" <benh@
In-Reply-To: <291af20b-820e-e848-cf75-730024612117@roeck-us.net>

On Wed, 2018-10-31 at 18:18 -0700, Guenter Roeck wrote:
> On 10/31/18 4:32 PM, Paul Burton wrote:
> > (Copying SunRPC & net maintainers.)
> > 
> > Hi Guenter,
> > 
> > On Wed, Oct 31, 2018 at 03:02:53PM -0700, Guenter Roeck wrote:
> > > The alternatives I can see are
> > > - Do not use cmpxchg64() outside architecture code (ie drop its
> > > use from
> > >    the offending driver, and keep doing the same whenever the
> > > problem comes
> > >    up again).
> > > or
> > > - Introduce something like ARCH_HAS_CMPXCHG64 and use it to
> > > determine
> > >    if cmpxchg64 is supported or not.
> > > 
> > > Any preference ?
> > 
> > My preference would be option 1 - avoiding cmpxchg64() where
> > possible in
> > generic code. I wouldn't be opposed to the Kconfig option if there
> > are
> > cases where cmpxchg64() can really help performance though.
> > 
> > The last time I'm aware of this coming up the affected driver was
> > modified to avoid cmpxchg64() [1].
> > 
> > In this particular case I have no idea why
> > net/sunrpc/auth_gss/gss_krb5_seal.c is using cmpxchg64() at all.
> > It's
> > essentially reinventing atomic64_fetch_inc() which is already
> > provided
> > everywhere via CONFIG_GENERIC_ATOMIC64 & the spinlock approach. At
> > least
> > for atomic64_* functions the assumption that all access will be
> > performed using those same functions seems somewhat reasonable.
> > 
> > So how does the below look? Trond?
> > 
> 
> For my part I agree that this would be a much better solution. The
> argument
> that it is not always absolutely guaranteed that atomics don't wrap
> doesn't
> really hold for me because it looks like they all do. On top of that,
> there
> is an explicit atomic_dec_if_positive() and
> atomic_fetch_add_unless(),
> which to me strongly suggests that they _are_ supposed to wrap.
> Given the cost of adding a comparison to each atomic operation to
> prevent it from wrapping, anything else would not really make sense
> to me.

That's a hypothesis, not a proven fact. There are architectures out
there that do not wrap signed integers, hence my question.

> So ... please consider my patch abandoned. Thanks for looking into
> this!
> 
> Guenter
> 
> > Thanks,
> >      Paul
> > 
> > [1] https://patchwork.ozlabs.org/cover/891284/
> > 
> > ---
> > diff --git a/include/linux/sunrpc/gss_krb5.h
> > b/include/linux/sunrpc/gss_krb5.h
> > index 131424cefc6a..02c0412e368c 100644
> > --- a/include/linux/sunrpc/gss_krb5.h
> > +++ b/include/linux/sunrpc/gss_krb5.h
> > @@ -107,8 +107,8 @@ struct krb5_ctx {
> >   	u8			Ksess[GSS_KRB5_MAX_KEYLEN]; /* session key
> > */
> >   	u8			cksum[GSS_KRB5_MAX_KEYLEN];
> >   	s32			endtime;
> > -	u32			seq_send;
> > -	u64			seq_send64;
> > +	atomic_t		seq_send;
> > +	atomic64_t		seq_send64;
> >   	struct xdr_netobj	mech_used;
> >   	u8			initiator_sign[GSS_KRB5_MAX_KEYLEN];
> >   	u8			acceptor_sign[GSS_KRB5_MAX_KEYLEN];
> > @@ -118,9 +118,6 @@ struct krb5_ctx {
> >   	u8			acceptor_integ[GSS_KRB5_MAX_KEYLEN];
> >   };
> >   
> > -extern u32 gss_seq_send_fetch_and_inc(struct krb5_ctx *ctx);
> > -extern u64 gss_seq_send64_fetch_and_inc(struct krb5_ctx *ctx);
> > -
> >   /* The length of the Kerberos GSS token header */
> >   #define GSS_KRB5_TOK_HDR_LEN	(16)
> >   
> > diff --git a/net/sunrpc/auth_gss/gss_krb5_mech.c
> > b/net/sunrpc/auth_gss/gss_krb5_mech.c
> > index 7f0424dfa8f6..eab71fc7af3e 100644
> > --- a/net/sunrpc/auth_gss/gss_krb5_mech.c
> > +++ b/net/sunrpc/auth_gss/gss_krb5_mech.c
> > @@ -274,6 +274,7 @@ get_key(const void *p, const void *end,
> >   static int
> >   gss_import_v1_context(const void *p, const void *end, struct
> > krb5_ctx *ctx)
> >   {
> > +	u32 seq_send;
> >   	int tmp;
> >   
> >   	p = simple_get_bytes(p, end, &ctx->initiate, sizeof(ctx-
> > >initiate));
> > @@ -315,9 +316,10 @@ gss_import_v1_context(const void *p, const
> > void *end, struct krb5_ctx *ctx)
> >   	p = simple_get_bytes(p, end, &ctx->endtime, sizeof(ctx-
> > >endtime));
> >   	if (IS_ERR(p))
> >   		goto out_err;
> > -	p = simple_get_bytes(p, end, &ctx->seq_send, sizeof(ctx-
> > >seq_send));
> > +	p = simple_get_bytes(p, end, &seq_send, sizeof(seq_send));
> >   	if (IS_ERR(p))
> >   		goto out_err;
> > +	atomic_set(&ctx->seq_send, seq_send);
> >   	p = simple_get_netobj(p, end, &ctx->mech_used);
> >   	if (IS_ERR(p))
> >   		goto out_err;
> > @@ -607,6 +609,7 @@ static int
> >   gss_import_v2_context(const void *p, const void *end, struct
> > krb5_ctx *ctx,
> >   		gfp_t gfp_mask)
> >   {
> > +	u64 seq_send64;
> >   	int keylen;
> >   
> >   	p = simple_get_bytes(p, end, &ctx->flags, sizeof(ctx->flags));
> > @@ -617,14 +620,15 @@ gss_import_v2_context(const void *p, const
> > void *end, struct krb5_ctx *ctx,
> >   	p = simple_get_bytes(p, end, &ctx->endtime, sizeof(ctx-
> > >endtime));
> >   	if (IS_ERR(p))
> >   		goto out_err;
> > -	p = simple_get_bytes(p, end, &ctx->seq_send64, sizeof(ctx-
> > >seq_send64));
> > +	p = simple_get_bytes(p, end, &seq_send64, sizeof(seq_send64));
> >   	if (IS_ERR(p))
> >   		goto out_err;
> > +	atomic64_set(&ctx->seq_send64, seq_send64);
> >   	/* set seq_send for use by "older" enctypes */
> > -	ctx->seq_send = ctx->seq_send64;
> > -	if (ctx->seq_send64 != ctx->seq_send) {
> > -		dprintk("%s: seq_send64 %lx, seq_send %x overflow?\n",
> > __func__,
> > -			(unsigned long)ctx->seq_send64, ctx->seq_send);
> > +	atomic_set(&ctx->seq_send, seq_send64);
> > +	if (seq_send64 != atomic_read(&ctx->seq_send)) {
> > +		dprintk("%s: seq_send64 %llx, seq_send %x overflow?\n",
> > __func__,
> > +			seq_send64, atomic_read(&ctx->seq_send));
> >   		p = ERR_PTR(-EINVAL);
> >   		goto out_err;
> >   	}
> > diff --git a/net/sunrpc/auth_gss/gss_krb5_seal.c
> > b/net/sunrpc/auth_gss/gss_krb5_seal.c
> > index b4adeb06660b..48fe4a591b54 100644
> > --- a/net/sunrpc/auth_gss/gss_krb5_seal.c
> > +++ b/net/sunrpc/auth_gss/gss_krb5_seal.c
> > @@ -123,30 +123,6 @@ setup_token_v2(struct krb5_ctx *ctx, struct
> > xdr_netobj *token)
> >   	return krb5_hdr;
> >   }
> >   
> > -u32
> > -gss_seq_send_fetch_and_inc(struct krb5_ctx *ctx)
> > -{
> > -	u32 old, seq_send = READ_ONCE(ctx->seq_send);
> > -
> > -	do {
> > -		old = seq_send;
> > -		seq_send = cmpxchg(&ctx->seq_send, old, old + 1);
> > -	} while (old != seq_send);
> > -	return seq_send;
> > -}
> > -
> > -u64
> > -gss_seq_send64_fetch_and_inc(struct krb5_ctx *ctx)
> > -{
> > -	u64 old, seq_send = READ_ONCE(ctx->seq_send);
> > -
> > -	do {
> > -		old = seq_send;
> > -		seq_send = cmpxchg64(&ctx->seq_send64, old, old + 1);
> > -	} while (old != seq_send);
> > -	return seq_send;
> > -}
> > -
> >   static u32
> >   gss_get_mic_v1(struct krb5_ctx *ctx, struct xdr_buf *text,
> >   		struct xdr_netobj *token)
> > @@ -177,7 +153,7 @@ gss_get_mic_v1(struct krb5_ctx *ctx, struct
> > xdr_buf *text,
> >   
> >   	memcpy(ptr + GSS_KRB5_TOK_HDR_LEN, md5cksum.data,
> > md5cksum.len);
> >   
> > -	seq_send = gss_seq_send_fetch_and_inc(ctx);
> > +	seq_send = atomic_fetch_inc(&ctx->seq_send);
> >   
> >   	if (krb5_make_seq_num(ctx, ctx->seq, ctx->initiate ? 0 : 0xff,
> >   			      seq_send, ptr + GSS_KRB5_TOK_HDR_LEN, ptr
> > + 8))
> > @@ -205,7 +181,7 @@ gss_get_mic_v2(struct krb5_ctx *ctx, struct
> > xdr_buf *text,
> >   
> >   	/* Set up the sequence number. Now 64-bits in clear
> >   	 * text and w/o direction indicator */
> > -	seq_send_be64 = cpu_to_be64(gss_seq_send64_fetch_and_inc(ctx));
> > +	seq_send_be64 = cpu_to_be64(atomic64_fetch_inc(&ctx-
> > >seq_send64));
> >   	memcpy(krb5_hdr + 8, (char *) &seq_send_be64, 8);
> >   
> >   	if (ctx->initiate) {
> > diff --git a/net/sunrpc/auth_gss/gss_krb5_wrap.c
> > b/net/sunrpc/auth_gss/gss_krb5_wrap.c
> > index 962fa84e6db1..5cdde6cb703a 100644
> > --- a/net/sunrpc/auth_gss/gss_krb5_wrap.c
> > +++ b/net/sunrpc/auth_gss/gss_krb5_wrap.c
> > @@ -228,7 +228,7 @@ gss_wrap_kerberos_v1(struct krb5_ctx *kctx, int
> > offset,
> >   
> >   	memcpy(ptr + GSS_KRB5_TOK_HDR_LEN, md5cksum.data,
> > md5cksum.len);
> >   
> > -	seq_send = gss_seq_send_fetch_and_inc(kctx);
> > +	seq_send = atomic_fetch_inc(&kctx->seq_send);
> >   
> >   	/* XXX would probably be more efficient to compute checksum
> >   	 * and encrypt at the same time: */
> > @@ -475,7 +475,7 @@ gss_wrap_kerberos_v2(struct krb5_ctx *kctx, u32
> > offset,
> >   	*be16ptr++ = 0;
> >   
> >   	be64ptr = (__be64 *)be16ptr;
> > -	*be64ptr = cpu_to_be64(gss_seq_send64_fetch_and_inc(kctx));
> > +	*be64ptr = cpu_to_be64(atomic64_fetch_inc(&kctx->seq_send64));
> >   
> >   	err = (*kctx->gk5e->encrypt_v2)(kctx, offset, buf, pages);
> >   	if (err)
> > 
-- 
Trond Myklebust
CTO, Hammerspace Inc
4300 El Camino Real, Suite 105
Los Altos, CA 94022
www.hammer.space



^ permalink raw reply

* Re: Latest net-next kernel 4.19.0+
From: Paweł Staszewski @ 2018-10-31 21:22 UTC (permalink / raw)
  To: Saeed Mahameed, eric.dumazet@gmail.com, xiyou.wangcong@gmail.com
  Cc: netdev@vger.kernel.org, dmichail@google.com
In-Reply-To: <7f19ab59f1bbfe74cf3d056ccd9adf556cd09f60.camel@mellanox.com>



W dniu 31.10.2018 o 22:05, Saeed Mahameed pisze:
> On Tue, 2018-10-30 at 10:32 -0700, Cong Wang wrote:
>> On Tue, Oct 30, 2018 at 7:16 AM Eric Dumazet <eric.dumazet@gmail.com>
>> wrote:
>>>
>>>
>>> On 10/30/2018 01:09 AM, Paweł Staszewski wrote:
>>>>
>>>> W dniu 30.10.2018 o 08:29, Eric Dumazet pisze:
>>>>> On 10/29/2018 11:09 PM, Dimitris Michailidis wrote:
>>>>>
>>>>>> Indeed this is a bug. I would expect it to produce frequent
>>>>>> errors
>>>>>> though as many odd-length
>>>>>> packets would trigger it. Do you have RXFCS? Regardless, how
>>>>>> frequently do you see the problem?
>>>>>>
>>>>> Old kernels (before 88078d98d1bb) were simply resetting
>>>>> ip_summed to CHECKSUM_NONE
>>>>>
>>>>> And before your fix (commit d55bef5059dd057bd), mlx5 bug was
>>>>> canceling the bug you fixed.
>>>>>
>>>>> So we now need to also fix mlx5.
>>>>>
>>>>> And of course use skb_header_pointer() in mlx5e_get_fcs() as I
>>>>> mentioned earlier,
>>>>> plus __get_unaligned_cpu32() as you hinted.
>>>>>
>>>>>
>>>>>
>>>>>
>>>> No RXFCS
>>
>> Same with Pawel, RXFCS is disabled by default.
>>
>>
>>>> And this trace is rly frequently like once per 3/4 seconds
>>>> like below:
>>>> [28965.776864] vlan1490: hw csum failure
>>> Might be vlan related.
> Hi Pawel, is the vlan stripping offload disabled or enabled in your
> case ?
>
> To verify:
> ethtool -k <interface> | grep rx-vlan-offload
> rx-vlan-offload: on
> To set:
> ethtool -K <interface> rxvlan on/off
Enabled:
ethtool -k enp175s0f0
Features for enp175s0f0:
rx-checksumming: on
tx-checksumming: on
         tx-checksum-ipv4: on
         tx-checksum-ip-generic: off [fixed]
         tx-checksum-ipv6: on
         tx-checksum-fcoe-crc: off [fixed]
         tx-checksum-sctp: off [fixed]
scatter-gather: on
         tx-scatter-gather: on
         tx-scatter-gather-fraglist: off [fixed]
tcp-segmentation-offload: on
         tx-tcp-segmentation: on
         tx-tcp-ecn-segmentation: off [fixed]
         tx-tcp-mangleid-segmentation: off
         tx-tcp6-segmentation: on
udp-fragmentation-offload: off
generic-segmentation-offload: on
generic-receive-offload: on
large-receive-offload: off [fixed]
rx-vlan-offload: on
tx-vlan-offload: on
ntuple-filters: off
receive-hashing: on
highdma: on [fixed]
rx-vlan-filter: on
vlan-challenged: off [fixed]
tx-lockless: off [fixed]
netns-local: off [fixed]
tx-gso-robust: off [fixed]
tx-fcoe-segmentation: off [fixed]
tx-gre-segmentation: on
tx-gre-csum-segmentation: on
tx-ipxip4-segmentation: off [fixed]
tx-ipxip6-segmentation: off [fixed]
tx-udp_tnl-segmentation: on
tx-udp_tnl-csum-segmentation: on
tx-gso-partial: on
tx-sctp-segmentation: off [fixed]
tx-esp-segmentation: off [fixed]
tx-udp-segmentation: on
fcoe-mtu: off [fixed]
tx-nocache-copy: off
loopback: off [fixed]
rx-fcs: off
rx-all: off
tx-vlan-stag-hw-insert: on
rx-vlan-stag-hw-parse: off [fixed]
rx-vlan-stag-filter: on [fixed]
l2-fwd-offload: off [fixed]
hw-tc-offload: on
esp-hw-offload: off [fixed]
esp-tx-csum-hw-offload: off [fixed]
rx-udp_tunnel-port-offload: on
tls-hw-tx-offload: off [fixed]
tls-hw-rx-offload: off [fixed]
rx-gro-hw: off [fixed]
tls-hw-record: off [fixed]


>
> if the vlan offload is off then it will trigger the mlx5e vlan csum
> adjustment code pointed out by Eric.
>
> Anyhow, it should work in both cases, but i am trying to narrow down
> the possibilities.
>
> Also could it be a double tagged packet ?
no double tagged packets there


>
>
>> Unlike Pawel's case, we don't use vlan at all, maybe this is why we
>> see
>> it much less frequently than Pawel.
>>
>> Also, it is probably not specific to mlx5, as there is another report
>> which
>> is probably a non-mlx5 driver.
>>
> Cong, How often does this happen ? can you some how verify if the
> problematic packet has extra end padding after the ip payload ?
>
> It would be cool if we had a feature in kernel to store such SKB in
> memory when such issue occurs, and let the user dump it later (via
> tcpdump) and send the dump to the vendor for debug so we could just
> replay and see what happens.
>
>> Thanks.

^ permalink raw reply

* Re: Latest net-next kernel 4.19.0+
From: Paweł Staszewski @ 2018-10-31 21:24 UTC (permalink / raw)
  To: Eric Dumazet, Dimitris Michailidis
  Cc: Cong Wang, Linux Kernel Network Developers
In-Reply-To: <76dfbbda-d7f1-b13a-5921-c12c3b0f8e3e@gmail.com>



W dniu 30.10.2018 o 15:16, Eric Dumazet pisze:
>
> On 10/30/2018 01:09 AM, Paweł Staszewski wrote:
>>
>> W dniu 30.10.2018 o 08:29, Eric Dumazet pisze:
>>> On 10/29/2018 11:09 PM, Dimitris Michailidis wrote:
>>>
>>>> Indeed this is a bug. I would expect it to produce frequent errors
>>>> though as many odd-length
>>>> packets would trigger it. Do you have RXFCS? Regardless, how
>>>> frequently do you see the problem?
>>>>
>>> Old kernels (before 88078d98d1bb) were simply resetting ip_summed to CHECKSUM_NONE
>>>
>>> And before your fix (commit d55bef5059dd057bd), mlx5 bug was canceling the bug you fixed.
>>>
>>> So we now need to also fix mlx5.
>>>
>>> And of course use skb_header_pointer() in mlx5e_get_fcs() as I mentioned earlier,
>>> plus __get_unaligned_cpu32() as you hinted.
>>>
>>>
>>>
>>>
>> No RXFCS
>>
>> And this trace is rly frequently like once per 3/4 seconds
>> like below:
>> [28965.776864] vlan1490: hw csum failure
> Might be vlan related.
>
> Can you first check this :
>
> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c b/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
> index 94224c22ecc310a87b6715051e335446f29bec03..6f4bfebf0d9a3ae7567062abb3ea6532b3aaf3d6 100644
> --- a/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
> +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_rx.c
> @@ -789,13 +789,8 @@ static inline void mlx5e_handle_csum(struct net_device *netdev,
>                  skb->ip_summed = CHECKSUM_COMPLETE;
>                  skb->csum = csum_unfold((__force __sum16)cqe->check_sum);
>                  if (network_depth > ETH_HLEN)
> -                       /* CQE csum is calculated from the IP header and does
> -                        * not cover VLAN headers (if present). This will add
> -                        * the checksum manually.
> -                        */
> -                       skb->csum = csum_partial(skb->data + ETH_HLEN,
> -                                                network_depth - ETH_HLEN,
> -                                                skb->csum);
> +                       /* Temporary debugging */
> +                       skb->ip_summed = CHECKSUM_NONE;
>                  if (unlikely(netdev->features & NETIF_F_RXFCS))
>                          skb->csum = csum_add(skb->csum,
>                                               (__force __wsum)mlx5e_get_fcs(skb));
>
>

Ok thanks - will try it.

^ permalink raw reply

* Kernel 4.19 network performance - forwarding/routing normal users traffic
From: Paweł Staszewski @ 2018-10-31 21:57 UTC (permalink / raw)
  To: netdev

Hi

So maybee someone will be interested how linux kernel handles normal 
traffic (not pktgen :) )


Server HW configuration:

CPU : Intel(R) Xeon(R) Gold 6132 CPU @ 2.60GHz

NIC's: 2x 100G Mellanox ConnectX-4 (connected to x16 pcie 8GT)


Server software:

FRR - as routing daemon

enp175s0f0 (100G) - 16 vlans from upstreams (28 RSS binded to local numa 
node)

enp175s0f1 (100G) - 343 vlans to clients (28 RSS binded to local numa node)


Maximum traffic that server can handle:

Bandwidth

  bwm-ng v0.6.1 (probing every 1.000s), press 'h' for help
   input: /proc/net/dev type: rate
   \         iface                   Rx Tx                Total
==============================================================================
        enp175s0f1:          28.51 Gb/s           37.24 Gb/s           
65.74 Gb/s
        enp175s0f0:          38.07 Gb/s           28.44 Gb/s           
66.51 Gb/s
------------------------------------------------------------------------------
             total:          66.58 Gb/s           65.67 Gb/s          
132.25 Gb/s


Packets per second:

  bwm-ng v0.6.1 (probing every 1.000s), press 'h' for help
   input: /proc/net/dev type: rate
   -         iface                   Rx Tx                Total
==============================================================================
        enp175s0f1:      5248589.00 P/s       3486617.75 P/s 8735207.00 P/s
        enp175s0f0:      3557944.25 P/s       5232516.00 P/s 8790460.00 P/s
------------------------------------------------------------------------------
             total:      8806533.00 P/s       8719134.00 P/s 17525668.00 P/s


After reaching that limits nics on the upstream side (more RX traffic) 
start to drop packets


I just dont understand that server can't handle more bandwidth 
(~40Gbit/s is limit where all cpu's are 100% util) - where pps on RX 
side are increasing.

Was thinking that maybee reached some pcie x16 limit - but x16 8GT is 
126Gbit - and also when testing with pktgen i can reach more bw and pps 
(like 4x more comparing to normal internet traffic)

And wondering if there is something that can be improved here.



Some more informations / counters / stats and perf top below:

Perf top flame graph:

https://uploadfiles.io/7zo6u



System configuration(long):


cat /sys/devices/system/node/node1/cpulist
14-27,42-55
cat /sys/class/net/enp175s0f0/device/numa_node
1
cat /sys/class/net/enp175s0f1/device/numa_node
1





ip -s -d link ls dev enp175s0f0
6: enp175s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state 
UP mode DEFAULT group default qlen 8192
     link/ether 0c:c4:7a:d8:5d:1c brd ff:ff:ff:ff:ff:ff promiscuity 0 
addrgenmode eui64 numtxqueues 448 numrxqueues 56 gso_max_size 65536 
gso_max_segs 65535
     RX: bytes  packets  errors  dropped overrun mcast
     184142375840858 141347715974 2       2806325 0       85050528
     TX: bytes  packets  errors  dropped carrier collsns
     99270697277430 172227994003 0       0       0       0

  ip -s -d link ls dev enp175s0f1
7: enp175s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state 
UP mode DEFAULT group default qlen 8192
     link/ether 0c:c4:7a:d8:5d:1d brd ff:ff:ff:ff:ff:ff promiscuity 0 
addrgenmode eui64 numtxqueues 448 numrxqueues 56 gso_max_size 65536 
gso_max_segs 65535
     RX: bytes  packets  errors  dropped overrun mcast
     99686284170801 173507590134 61      669685  0       100304421
     TX: bytes  packets  errors  dropped carrier collsns
     184435107970545 142383178304 0       0       0       0


./softnet.sh
cpu      total    dropped   squeezed  collision        rps flow_limit
   0 3961392822          0    1221478          0 0          0
   1 3701952251          0    1258234          0 0          0
   2 3879522030          0    1584282          0 0          0
   3 3731349789          0    1529029          0 0          0
   4 1323956701          0    2176371          0 0          0
   5  420528963          0    1880146          0 0          0
   6  348720322          0    1830142          0 0          0
   7  372736328          0    1820891          0 0          0
   8  567888751          0    1414763          0 0          0
   9  476075775          0    1868150          0 0          0
  10  468946725          0    1841428          0 0          0
  11  676591958          0    1900160          0 0          0
  12  346803472          0    1834600          0 0          0
  13  457960872          0    1874529          0 0          0
  14 1990279665          0    4699000          0 0          0
  15 1211873601          0    4541281          0 0          0
  16 1123871928          0    4544712          0 0          0
  17 1014957263          0    4152355          0 0          0
  18 2603779724          0    4593869          0 0          0
  19 2181924054          0    4930618          0 0          0
  20 2273502182          0    4894627          0 0          0
  21 2232030947          0    4860048          0 0          0
  22 2203555394          0    4603830          0 0          0
  23 2194756800          0    4921294          0 0          0
  24 2347158294          0    4818354          0 0          0
  25 2291097883          0    4744469          0 0          0
  26 2206945011          0    4836483          0 0          0
  27 2318530217          0    4917617          0 0          0
  28  512797543          0    1895200          0 0          0
  29  597279474          0    1532134          0 0          0
  30  475317503          0    1451523          0 0          0
  31  499172796          0    1901207          0 0          0
  32  493874745          0    1915382          0 0          0
  33  296056288          0    1865535          0 0          0
  34 3905097041          0    1580822          0 0          0
  35 3905112345          0    1536105          0 0          0
  36 3900358950          0    1166319          0 0          0
  37 3940978093          0    1600219          0 0          0
  38 3878632215          0    1180389          0 0          0
  39 3814804736          0    1584925          0 0          0
  40 4152934337          0    1663660          0 0          0
  41 3855273904          0    1552219          0 0          0
  42 2319538182          0    4884480          0 0          0
  43 2448606991          0    4387456          0 0          0
  44 1436136753          0    4485073          0 0          0
  45 1200500141          0    4537284          0 0          0
  46 1307799923          0    4534156          0 0          0
  47 1586575293          0    4272997          0 0          0
  48    3852574          0    4162653          0 0          0
  49  391449390          0    3935202          0 0          0
  50  791388200          0    4290738          0 0          0
  51  127107573          0    3907750          0 0          0
  52  115622148          0    4012843          0 0          0
  53   71098871          0    4200625          0 0          0
  54  305121466          0    4365614          0 0          0
  55   10914257          0    4369426          0 0          0




    PerfTop:  108490 irqs/sec  kernel:99.6%  exact:  0.0% [4000Hz 
cycles],  (all, 56 CPUs)
---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

     26.78%  [kernel]       [k] queued_spin_lock_slowpath
      9.09%  [kernel]       [k] mlx5e_skb_from_cqe_linear
      4.94%  [kernel]       [k] mlx5e_sq_xmit
      3.63%  [kernel]       [k] memcpy_erms
      3.30%  [kernel]       [k] fib_table_lookup
      3.26%  [kernel]       [k] build_skb
      2.41%  [kernel]       [k] mlx5e_poll_tx_cq
      2.11%  [kernel]       [k] get_page_from_freelist
      1.51%  [kernel]       [k] vlan_do_receive
      1.51%  [kernel]       [k] _raw_spin_lock
      1.43%  [kernel]       [k] __dev_queue_xmit
      1.41%  [kernel]       [k] dev_gro_receive
      1.34%  [kernel]       [k] mlx5e_poll_rx_cq
      1.26%  [kernel]       [k] tcp_gro_receive
      1.21%  [kernel]       [k] free_one_page
      1.13%  [kernel]       [k] swiotlb_map_page
      1.13%  [kernel]       [k] mlx5e_post_rx_wqes
      1.05%  [kernel]       [k] pfifo_fast_dequeue
      1.05%  [kernel]       [k] mlx5e_handle_rx_cqe
      1.03%  [kernel]       [k] ip_finish_output2
      1.02%  [kernel]       [k] ipt_do_table
      0.96%  [kernel]       [k] inet_gro_receive
      0.91%  [kernel]       [k] mlx5_eq_int
      0.88%  [kernel]       [k] __slab_free.isra.79
      0.86%  [kernel]       [k] __build_skb
      0.84%  [kernel]       [k] page_frag_free
      0.76%  [kernel]       [k] skb_release_data
      0.75%  [kernel]       [k] __netif_receive_skb_core
      0.75%  [kernel]       [k] irq_entries_start
      0.71%  [kernel]       [k] ip_route_input_rcu
      0.65%  [kernel]       [k] vlan_dev_hard_start_xmit
      0.56%  [kernel]       [k] ip_forward
      0.56%  [kernel]       [k] __memcpy
      0.52%  [kernel]       [k] kmem_cache_alloc
      0.52%  [kernel]       [k] kmem_cache_free_bulk
      0.49%  [kernel]       [k] mlx5e_page_release
      0.47%  [kernel]       [k] netif_skb_features
      0.47%  [kernel]       [k] mlx5e_build_rx_skb
      0.47%  [kernel]       [k] dev_hard_start_xmit
      0.43%  [kernel]       [k] __page_pool_put_page
      0.43%  [kernel]       [k] __netif_schedule
      0.43%  [kernel]       [k] mlx5e_xmit
      0.41%  [kernel]       [k] __qdisc_run
      0.41%  [kernel]       [k] validate_xmit_skb.isra.142
      0.41%  [kernel]       [k] swiotlb_unmap_page
      0.40%  [kernel]       [k] inet_lookup_ifaddr_rcu
      0.34%  [kernel]       [k] ip_rcv_core.isra.20.constprop.25
      0.34%  [kernel]       [k] tcp4_gro_receive
      0.29%  [kernel]       [k] _raw_spin_lock_irqsave
      0.29%  [kernel]       [k] napi_consume_skb
      0.29%  [kernel]       [k] skb_gro_receive
      0.29%  [kernel]       [k] ___slab_alloc.isra.80
      0.27%  [kernel]       [k] eth_type_trans
      0.26%  [kernel]       [k] __free_pages_ok
      0.26%  [kernel]       [k] __get_xps_queue_idx
      0.24%  [kernel]       [k] _raw_spin_trylock
      0.23%  [kernel]       [k] __local_bh_enable_ip
      0.22%  [kernel]       [k] pfifo_fast_enqueue
      0.21%  [kernel]       [k] tasklet_action_common.isra.21
      0.21%  [kernel]       [k] sch_direct_xmit
      0.21%  [kernel]       [k] skb_network_protocol
      0.21%  [kernel]       [k] kmem_cache_free
      0.20%  [kernel]       [k] netdev_pick_tx
      0.18%  [kernel]       [k] napi_gro_complete
      0.18%  [kernel]       [k] __sched_text_start
      0.18%  [kernel]       [k] mlx5e_xdp_handle
      0.17%  [kernel]       [k] ip_finish_output
      0.16%  [kernel]       [k] napi_gro_flush
      0.16%  [kernel]       [k] vlan_passthru_hard_header
      0.16%  [kernel]       [k] skb_segment
      0.15%  [kernel]       [k] __alloc_pages_nodemask
      0.15%  [kernel]       [k] mlx5e_features_check
      0.15%  [kernel]       [k] mlx5e_napi_poll
      0.15%  [kernel]       [k] napi_gro_receive
      0.14%  [kernel]       [k] fib_validate_source
      0.14%  [kernel]       [k] _raw_spin_lock_irq
      0.14%  [kernel]       [k] inet_gro_complete
      0.14%  [kernel]       [k] get_partial_node.isra.78
      0.13%  [kernel]       [k] napi_complete_done
      0.13%  [kernel]       [k] ip_rcv_finish_core.isra.17
      0.13%  [kernel]       [k] cmd_exec



ethtool -S enp175s0f1
NIC statistics:
      rx_packets: 173730800927
      rx_bytes: 99827422751332
      tx_packets: 142532009512
      tx_bytes: 184633045911222
      tx_tso_packets: 25989113891
      tx_tso_bytes: 132933363384458
      tx_tso_inner_packets: 0
      tx_tso_inner_bytes: 0
      tx_added_vlan_packets: 74630239613
      tx_nop: 2029817748
      rx_lro_packets: 0
      rx_lro_bytes: 0
      rx_ecn_mark: 0
      rx_removed_vlan_packets: 173730800927
      rx_csum_unnecessary: 0
      rx_csum_none: 434357
      rx_csum_complete: 173730366570
      rx_csum_unnecessary_inner: 0
      rx_xdp_drop: 0
      rx_xdp_redirect: 0
      rx_xdp_tx_xmit: 0
      rx_xdp_tx_full: 0
      rx_xdp_tx_err: 0
      rx_xdp_tx_cqe: 0
      tx_csum_none: 38260960853
      tx_csum_partial: 36369278774
      tx_csum_partial_inner: 0
      tx_queue_stopped: 1
      tx_queue_dropped: 0
      tx_xmit_more: 748638099
      tx_recover: 0
      tx_cqes: 73881645031
      tx_queue_wake: 1
      tx_udp_seg_rem: 0
      tx_cqe_err: 0
      tx_xdp_xmit: 0
      tx_xdp_full: 0
      tx_xdp_err: 0
      tx_xdp_cqes: 0
      rx_wqe_err: 0
      rx_mpwqe_filler_cqes: 0
      rx_mpwqe_filler_strides: 0
      rx_buff_alloc_err: 0
      rx_cqe_compress_blks: 0
      rx_cqe_compress_pkts: 0
      rx_page_reuse: 0
      rx_cache_reuse: 14441066823
      rx_cache_full: 51126004413
      rx_cache_empty: 21297344082
      rx_cache_busy: 51127247487
      rx_cache_waive: 21298322293
      rx_congst_umr: 0
      rx_arfs_err: 0
      ch_events: 24603119858
      ch_poll: 25180949074
      ch_arm: 24480437587
      ch_aff_change: 75
      ch_eq_rearm: 0
      rx_out_of_buffer: 669685
      rx_if_down_packets: 61
      rx_vport_unicast_packets: 173731641945
      rx_vport_unicast_bytes: 100522745036693
      tx_vport_unicast_packets: 142531901313
      tx_vport_unicast_bytes: 185189071776429
      rx_vport_multicast_packets: 100360886
      rx_vport_multicast_bytes: 6639236688
      tx_vport_multicast_packets: 32837
      tx_vport_multicast_bytes: 2978810
      rx_vport_broadcast_packets: 44854
      rx_vport_broadcast_bytes: 6313510
      tx_vport_broadcast_packets: 72258
      tx_vport_broadcast_bytes: 4335480
      rx_vport_rdma_unicast_packets: 0
      rx_vport_rdma_unicast_bytes: 0
      tx_vport_rdma_unicast_packets: 0
      tx_vport_rdma_unicast_bytes: 0
      rx_vport_rdma_multicast_packets: 0
      rx_vport_rdma_multicast_bytes: 0
      tx_vport_rdma_multicast_packets: 0
      tx_vport_rdma_multicast_bytes: 0
      tx_packets_phy: 142532004669
      rx_packets_phy: 173980375752
      rx_crc_errors_phy: 0
      tx_bytes_phy: 185759204762903
      rx_bytes_phy: 101326109361379
      tx_multicast_phy: 32837
      tx_broadcast_phy: 72258
      rx_multicast_phy: 100360885
      rx_broadcast_phy: 44854
      rx_in_range_len_errors_phy: 2
      rx_out_of_range_len_phy: 0
      rx_oversize_pkts_phy: 59
      rx_symbol_err_phy: 0
      tx_mac_control_phy: 0
      rx_mac_control_phy: 0
      rx_unsupported_op_phy: 0
      rx_pause_ctrl_phy: 0
      tx_pause_ctrl_phy: 0
      rx_discards_phy: 148328738
      tx_discards_phy: 0
      tx_errors_phy: 0
      rx_undersize_pkts_phy: 0
      rx_fragments_phy: 0
      rx_jabbers_phy: 0
      rx_64_bytes_phy: 36551843112
      rx_65_to_127_bytes_phy: 65102131735
      rx_128_to_255_bytes_phy: 5755731137
      rx_256_to_511_bytes_phy: 2475619839
      rx_512_to_1023_bytes_phy: 2826971156
      rx_1024_to_1518_bytes_phy: 42474023107
      rx_1519_to_2047_bytes_phy: 18794051270
      rx_2048_to_4095_bytes_phy: 0
      rx_4096_to_8191_bytes_phy: 0
      rx_8192_to_10239_bytes_phy: 0
      link_down_events_phy: 0
      rx_pcs_symbol_err_phy: 0
      rx_corrected_bits_phy: 0
      rx_pci_signal_integrity: 0
      tx_pci_signal_integrity: 48
      rx_prio0_bytes: 101316322498995
      rx_prio0_packets: 173711151686
      tx_prio0_bytes: 185759176566814
      tx_prio0_packets: 142531983704
      rx_prio1_bytes: 47062768
      rx_prio1_packets: 228932
      tx_prio1_bytes: 0
      tx_prio1_packets: 0
      rx_prio2_bytes: 12434759
      rx_prio2_packets: 83773
      tx_prio2_bytes: 0
      tx_prio2_packets: 0
      rx_prio3_bytes: 288843134
      rx_prio3_packets: 982102
      tx_prio3_bytes: 0
      tx_prio3_packets: 0
      rx_prio4_bytes: 699797236
      rx_prio4_packets: 8109231
      tx_prio4_bytes: 0
      tx_prio4_packets: 0
      rx_prio5_bytes: 1385386738
      rx_prio5_packets: 9661187
      tx_prio5_bytes: 0
      tx_prio5_packets: 0
      rx_prio6_bytes: 317092102
      rx_prio6_packets: 1951538
      tx_prio6_bytes: 0
      tx_prio6_packets: 0
      rx_prio7_bytes: 7015734695
      rx_prio7_packets: 99847456
      tx_prio7_bytes: 0
      tx_prio7_packets: 0
      module_unplug: 0
      module_bus_stuck: 0
      module_high_temp: 0
      module_bad_shorted: 0
      ch0_events: 936264703
      ch0_poll: 963766474
      ch0_arm: 930246079
      ch0_aff_change: 0
      ch0_eq_rearm: 0
      ch1_events: 869408429
      ch1_poll: 896099392
      ch1_arm: 864336861
      ch1_aff_change: 0
      ch1_eq_rearm: 0
      ch2_events: 843345698
      ch2_poll: 869749522
      ch2_arm: 838186113
      ch2_aff_change: 2
      ch2_eq_rearm: 0
      ch3_events: 850261340
      ch3_poll: 876721111
      ch3_arm: 845295235
      ch3_aff_change: 3
      ch3_eq_rearm: 0
      ch4_events: 974985780
      ch4_poll: 997781915
      ch4_arm: 969618250
      ch4_aff_change: 3
      ch4_eq_rearm: 0
      ch5_events: 888559089
      ch5_poll: 912783615
      ch5_arm: 883826078
      ch5_aff_change: 2
      ch5_eq_rearm: 0
      ch6_events: 873730730
      ch6_poll: 899635752
      ch6_arm: 868677574
      ch6_aff_change: 4
      ch6_eq_rearm: 0
      ch7_events: 873478411
      ch7_poll: 899216716
      ch7_arm: 868693645
      ch7_aff_change: 3
      ch7_eq_rearm: 0
      ch8_events: 871900967
      ch8_poll: 898575518
      ch8_arm: 866763693
      ch8_aff_change: 3
      ch8_eq_rearm: 0
      ch9_events: 880325565
      ch9_poll: 904983269
      ch9_arm: 875643922
      ch9_aff_change: 2
      ch9_eq_rearm: 0
      ch10_events: 889919775
      ch10_poll: 915335809
      ch10_arm: 885110225
      ch10_aff_change: 4
      ch10_eq_rearm: 0
      ch11_events: 962709175
      ch11_poll: 983963451
      ch11_arm: 958117526
      ch11_aff_change: 2
      ch11_eq_rearm: 0
      ch12_events: 941333837
      ch12_poll: 964625523
      ch12_arm: 936409706
      ch12_aff_change: 2
      ch12_eq_rearm: 0
      ch13_events: 914996974
      ch13_poll: 937441049
      ch13_arm: 910478393
      ch13_aff_change: 4
      ch13_eq_rearm: 0
      ch14_events: 888050001
      ch14_poll: 911818008
      ch14_arm: 883465035
      ch14_aff_change: 4
      ch14_eq_rearm: 0
      ch15_events: 947547704
      ch15_poll: 969073194
      ch15_arm: 942686515
      ch15_aff_change: 4
      ch15_eq_rearm: 0
      ch16_events: 825804904
      ch16_poll: 840630747
      ch16_arm: 822227488
      ch16_aff_change: 2
      ch16_eq_rearm: 0
      ch17_events: 861673823
      ch17_poll: 874754041
      ch17_arm: 858520448
      ch17_aff_change: 2
      ch17_eq_rearm: 0
      ch18_events: 879413440
      ch18_poll: 893962529
      ch18_arm: 875983204
      ch18_aff_change: 4
      ch18_eq_rearm: 0
      ch19_events: 896073709
      ch19_poll: 909216857
      ch19_arm: 893022121
      ch19_aff_change: 4
      ch19_eq_rearm: 0
      ch20_events: 865188535
      ch20_poll: 880692345
      ch20_arm: 861440265
      ch20_aff_change: 3
      ch20_eq_rearm: 0
      ch21_events: 862709303
      ch21_poll: 878104242
      ch21_arm: 859041767
      ch21_aff_change: 2
      ch21_eq_rearm: 0
      ch22_events: 887720551
      ch22_poll: 904122074
      ch22_arm: 883983794
      ch22_aff_change: 2
      ch22_eq_rearm: 0
      ch23_events: 813355027
      ch23_poll: 828074467
      ch23_arm: 809912398
      ch23_aff_change: 4
      ch23_eq_rearm: 0
      ch24_events: 822366675
      ch24_poll: 839917937
      ch24_arm: 818422754
      ch24_aff_change: 2
      ch24_eq_rearm: 0
      ch25_events: 826642292
      ch25_poll: 842630121
      ch25_arm: 822642618
      ch25_aff_change: 2
      ch25_eq_rearm: 0
      ch26_events: 826392584
      ch26_poll: 843406973
      ch26_arm: 822455000
      ch26_aff_change: 3
      ch26_eq_rearm: 0
      ch27_events: 828960899
      ch27_poll: 843866518
      ch27_arm: 825230937
      ch27_aff_change: 3
      ch27_eq_rearm: 0
      ch28_events: 7
      ch28_poll: 7
      ch28_arm: 7
      ch28_aff_change: 0
      ch28_eq_rearm: 0
      ch29_events: 4
      ch29_poll: 4
      ch29_arm: 4
      ch29_aff_change: 0
      ch29_eq_rearm: 0
      ch30_events: 4
      ch30_poll: 4
      ch30_arm: 4
      ch30_aff_change: 0
      ch30_eq_rearm: 0
      ch31_events: 4
      ch31_poll: 4
      ch31_arm: 4
      ch31_aff_change: 0
      ch31_eq_rearm: 0
      ch32_events: 4
      ch32_poll: 4
      ch32_arm: 4
      ch32_aff_change: 0
      ch32_eq_rearm: 0
      ch33_events: 4
      ch33_poll: 4
      ch33_arm: 4
      ch33_aff_change: 0
      ch33_eq_rearm: 0
      ch34_events: 4
      ch34_poll: 4
      ch34_arm: 4
      ch34_aff_change: 0
      ch34_eq_rearm: 0
      ch35_events: 4
      ch35_poll: 4
      ch35_arm: 4
      ch35_aff_change: 0
      ch35_eq_rearm: 0
      ch36_events: 4
      ch36_poll: 4
      ch36_arm: 4
      ch36_aff_change: 0
      ch36_eq_rearm: 0
      ch37_events: 4
      ch37_poll: 4
      ch37_arm: 4
      ch37_aff_change: 0
      ch37_eq_rearm: 0
      ch38_events: 4
      ch38_poll: 4
      ch38_arm: 4
      ch38_aff_change: 0
      ch38_eq_rearm: 0
      ch39_events: 4
      ch39_poll: 4
      ch39_arm: 4
      ch39_aff_change: 0
      ch39_eq_rearm: 0
      ch40_events: 4
      ch40_poll: 4
      ch40_arm: 4
      ch40_aff_change: 0
      ch40_eq_rearm: 0
      ch41_events: 4
      ch41_poll: 4
      ch41_arm: 4
      ch41_aff_change: 0
      ch41_eq_rearm: 0
      ch42_events: 4
      ch42_poll: 4
      ch42_arm: 4
      ch42_aff_change: 0
      ch42_eq_rearm: 0
      ch43_events: 4
      ch43_poll: 4
      ch43_arm: 4
      ch43_aff_change: 0
      ch43_eq_rearm: 0
      ch44_events: 4
      ch44_poll: 4
      ch44_arm: 4
      ch44_aff_change: 0
      ch44_eq_rearm: 0
      ch45_events: 4
      ch45_poll: 4
      ch45_arm: 4
      ch45_aff_change: 0
      ch45_eq_rearm: 0
      ch46_events: 4
      ch46_poll: 4
      ch46_arm: 4
      ch46_aff_change: 0
      ch46_eq_rearm: 0
      ch47_events: 4
      ch47_poll: 4
      ch47_arm: 4
      ch47_aff_change: 0
      ch47_eq_rearm: 0
      ch48_events: 4
      ch48_poll: 4
      ch48_arm: 4
      ch48_aff_change: 0
      ch48_eq_rearm: 0
      ch49_events: 4
      ch49_poll: 4
      ch49_arm: 4
      ch49_aff_change: 0
      ch49_eq_rearm: 0
      ch50_events: 4
      ch50_poll: 4
      ch50_arm: 4
      ch50_aff_change: 0
      ch50_eq_rearm: 0
      ch51_events: 4
      ch51_poll: 4
      ch51_arm: 4
      ch51_aff_change: 0
      ch51_eq_rearm: 0
      ch52_events: 4
      ch52_poll: 4
      ch52_arm: 4
      ch52_aff_change: 0
      ch52_eq_rearm: 0
      ch53_events: 4
      ch53_poll: 4
      ch53_arm: 4
      ch53_aff_change: 0
      ch53_eq_rearm: 0
      ch54_events: 4
      ch54_poll: 4
      ch54_arm: 4
      ch54_aff_change: 0
      ch54_eq_rearm: 0
      ch55_events: 4
      ch55_poll: 4
      ch55_arm: 4
      ch55_aff_change: 0
      ch55_eq_rearm: 0
      rx0_packets: 7284057433
      rx0_bytes: 4330611281319
      rx0_csum_complete: 7283623076
      rx0_csum_unnecessary: 0
      rx0_csum_unnecessary_inner: 0
      rx0_csum_none: 434357
      rx0_xdp_drop: 0
      rx0_xdp_redirect: 0
      rx0_lro_packets: 0
      rx0_lro_bytes: 0
      rx0_ecn_mark: 0
      rx0_removed_vlan_packets: 7284057433
      rx0_wqe_err: 0
      rx0_mpwqe_filler_cqes: 0
      rx0_mpwqe_filler_strides: 0
      rx0_buff_alloc_err: 0
      rx0_cqe_compress_blks: 0
      rx0_cqe_compress_pkts: 0
      rx0_page_reuse: 0
      rx0_cache_reuse: 1989731589
      rx0_cache_full: 28213297
      rx0_cache_empty: 1624089822
      rx0_cache_busy: 28213961
      rx0_cache_waive: 1624083610
      rx0_congst_umr: 0
      rx0_arfs_err: 0
      rx0_xdp_tx_xmit: 0
      rx0_xdp_tx_full: 0
      rx0_xdp_tx_err: 0
      rx0_xdp_tx_cqes: 0
      rx1_packets: 6691319211
      rx1_bytes: 3799580210608
      rx1_csum_complete: 6691319211
      rx1_csum_unnecessary: 0
      rx1_csum_unnecessary_inner: 0
      rx1_csum_none: 0
      rx1_xdp_drop: 0
      rx1_xdp_redirect: 0
      rx1_lro_packets: 0
      rx1_lro_bytes: 0
      rx1_ecn_mark: 0
      rx1_removed_vlan_packets: 6691319211
      rx1_wqe_err: 0
      rx1_mpwqe_filler_cqes: 0
      rx1_mpwqe_filler_strides: 0
      rx1_buff_alloc_err: 0
      rx1_cqe_compress_blks: 0
      rx1_cqe_compress_pkts: 0
      rx1_page_reuse: 0
      rx1_cache_reuse: 2270019
      rx1_cache_full: 3343389331
      rx1_cache_empty: 6656
      rx1_cache_busy: 3343389585
      rx1_cache_waive: 0
      rx1_congst_umr: 0
      rx1_arfs_err: 0
      rx1_xdp_tx_xmit: 0
      rx1_xdp_tx_full: 0
      rx1_xdp_tx_err: 0
      rx1_xdp_tx_cqes: 0
      rx2_packets: 6618370416
      rx2_bytes: 3762508364015
      rx2_csum_complete: 6618370416
      rx2_csum_unnecessary: 0
      rx2_csum_unnecessary_inner: 0
      rx2_csum_none: 0
      rx2_xdp_drop: 0
      rx2_xdp_redirect: 0
      rx2_lro_packets: 0
      rx2_lro_bytes: 0
      rx2_ecn_mark: 0
      rx2_removed_vlan_packets: 6618370416
      rx2_wqe_err: 0
      rx2_mpwqe_filler_cqes: 0
      rx2_mpwqe_filler_strides: 0
      rx2_buff_alloc_err: 0
      rx2_cqe_compress_blks: 0
      rx2_cqe_compress_pkts: 0
      rx2_page_reuse: 0
      rx2_cache_reuse: 111419328
      rx2_cache_full: 1807563903
      rx2_cache_empty: 1390208158
      rx2_cache_busy: 1807564378
      rx2_cache_waive: 1390201722
      rx2_congst_umr: 0
      rx2_arfs_err: 0
      rx2_xdp_tx_xmit: 0
      rx2_xdp_tx_full: 0
      rx2_xdp_tx_err: 0
      rx2_xdp_tx_cqes: 0
      rx3_packets: 6665308976
      rx3_bytes: 3828546206006
      rx3_csum_complete: 6665308976
      rx3_csum_unnecessary: 0
      rx3_csum_unnecessary_inner: 0
      rx3_csum_none: 0
      rx3_xdp_drop: 0
      rx3_xdp_redirect: 0
      rx3_lro_packets: 0
      rx3_lro_bytes: 0
      rx3_ecn_mark: 0
      rx3_removed_vlan_packets: 6665308976
      rx3_wqe_err: 0
      rx3_mpwqe_filler_cqes: 0
      rx3_mpwqe_filler_strides: 0
      rx3_buff_alloc_err: 0
      rx3_cqe_compress_blks: 0
      rx3_cqe_compress_pkts: 0
      rx3_page_reuse: 0
      rx3_cache_reuse: 215779091
      rx3_cache_full: 1720040649
      rx3_cache_empty: 1396840926
      rx3_cache_busy: 1720041127
      rx3_cache_waive: 1396834493
      rx3_congst_umr: 0
      rx3_arfs_err: 0
      rx3_xdp_tx_xmit: 0
      rx3_xdp_tx_full: 0
      rx3_xdp_tx_err: 0
      rx3_xdp_tx_cqes: 0
      rx4_packets: 6764448165
      rx4_bytes: 3883101339142
      rx4_csum_complete: 6764448165
      rx4_csum_unnecessary: 0
      rx4_csum_unnecessary_inner: 0
      rx4_csum_none: 0
      rx4_xdp_drop: 0
      rx4_xdp_redirect: 0
      rx4_lro_packets: 0
      rx4_lro_bytes: 0
      rx4_ecn_mark: 0
      rx4_removed_vlan_packets: 6764448165
      rx4_wqe_err: 0
      rx4_mpwqe_filler_cqes: 0
      rx4_mpwqe_filler_strides: 0
      rx4_buff_alloc_err: 0
      rx4_cqe_compress_blks: 0
      rx4_cqe_compress_pkts: 0
      rx4_page_reuse: 0
      rx4_cache_reuse: 1930710653
      rx4_cache_full: 6490815
      rx4_cache_empty: 1445028605
      rx4_cache_busy: 6491478
      rx4_cache_waive: 1445022392
      rx4_congst_umr: 0
      rx4_arfs_err: 0
      rx4_xdp_tx_xmit: 0
      rx4_xdp_tx_full: 0
      rx4_xdp_tx_err: 0
      rx4_xdp_tx_cqes: 0
      rx5_packets: 6736853264
      rx5_bytes: 3925186068552
      rx5_csum_complete: 6736853264
      rx5_csum_unnecessary: 0
      rx5_csum_unnecessary_inner: 0
      rx5_csum_none: 0
      rx5_xdp_drop: 0
      rx5_xdp_redirect: 0
      rx5_lro_packets: 0
      rx5_lro_bytes: 0
      rx5_ecn_mark: 0
      rx5_removed_vlan_packets: 6736853264
      rx5_wqe_err: 0
      rx5_mpwqe_filler_cqes: 0
      rx5_mpwqe_filler_strides: 0
      rx5_buff_alloc_err: 0
      rx5_cqe_compress_blks: 0
      rx5_cqe_compress_pkts: 0
      rx5_page_reuse: 0
      rx5_cache_reuse: 7283914
      rx5_cache_full: 3361142463
      rx5_cache_empty: 6656
      rx5_cache_busy: 3361142718
      rx5_cache_waive: 0
      rx5_congst_umr: 0
      rx5_arfs_err: 0
      rx5_xdp_tx_xmit: 0
      rx5_xdp_tx_full: 0
      rx5_xdp_tx_err: 0
      rx5_xdp_tx_cqes: 0
      rx6_packets: 6751588828
      rx6_bytes: 3860537598885
      rx6_csum_complete: 6751588828
      rx6_csum_unnecessary: 0
      rx6_csum_unnecessary_inner: 0
      rx6_csum_none: 0
      rx6_xdp_drop: 0
      rx6_xdp_redirect: 0
      rx6_lro_packets: 0
      rx6_lro_bytes: 0
      rx6_ecn_mark: 0
      rx6_removed_vlan_packets: 6751588828
      rx6_wqe_err: 0
      rx6_mpwqe_filler_cqes: 0
      rx6_mpwqe_filler_strides: 0
      rx6_buff_alloc_err: 0
      rx6_cqe_compress_blks: 0
      rx6_cqe_compress_pkts: 0
      rx6_page_reuse: 0
      rx6_cache_reuse: 96032126
      rx6_cache_full: 1857890923
      rx6_cache_empty: 1421877543
      rx6_cache_busy: 1857891399
      rx6_cache_waive: 1421871110
      rx6_congst_umr: 0
      rx6_arfs_err: 0
      rx6_xdp_tx_xmit: 0
      rx6_xdp_tx_full: 0
      rx6_xdp_tx_err: 0
      rx6_xdp_tx_cqes: 0
      rx7_packets: 6935300074
      rx7_bytes: 4004713524388
      rx7_csum_complete: 6935300074
      rx7_csum_unnecessary: 0
      rx7_csum_unnecessary_inner: 0
      rx7_csum_none: 0
      rx7_xdp_drop: 0
      rx7_xdp_redirect: 0
      rx7_lro_packets: 0
      rx7_lro_bytes: 0
      rx7_ecn_mark: 0
      rx7_removed_vlan_packets: 6935300074
      rx7_wqe_err: 0
      rx7_mpwqe_filler_cqes: 0
      rx7_mpwqe_filler_strides: 0
      rx7_buff_alloc_err: 0
      rx7_cqe_compress_blks: 0
      rx7_cqe_compress_pkts: 0
      rx7_page_reuse: 0
      rx7_cache_reuse: 17555187
      rx7_cache_full: 3450094595
      rx7_cache_empty: 6656
      rx7_cache_busy: 3450094849
      rx7_cache_waive: 0
      rx7_congst_umr: 0
      rx7_arfs_err: 0
      rx7_xdp_tx_xmit: 0
      rx7_xdp_tx_full: 0
      rx7_xdp_tx_err: 0
      rx7_xdp_tx_cqes: 0
      rx8_packets: 6678640094
      rx8_bytes: 3783722686028
      rx8_csum_complete: 6678640094
      rx8_csum_unnecessary: 0
      rx8_csum_unnecessary_inner: 0
      rx8_csum_none: 0
      rx8_xdp_drop: 0
      rx8_xdp_redirect: 0
      rx8_lro_packets: 0
      rx8_lro_bytes: 0
      rx8_ecn_mark: 0
      rx8_removed_vlan_packets: 6678640094
      rx8_wqe_err: 0
      rx8_mpwqe_filler_cqes: 0
      rx8_mpwqe_filler_strides: 0
      rx8_buff_alloc_err: 0
      rx8_cqe_compress_blks: 0
      rx8_cqe_compress_pkts: 0
      rx8_page_reuse: 0
      rx8_cache_reuse: 71006578
      rx8_cache_full: 1879380649
      rx8_cache_empty: 1388938999
      rx8_cache_busy: 1879381123
      rx8_cache_waive: 1388932565
      rx8_congst_umr: 0
      rx8_arfs_err: 0
      rx8_xdp_tx_xmit: 0
      rx8_xdp_tx_full: 0
      rx8_xdp_tx_err: 0
      rx8_xdp_tx_cqes: 0
      rx9_packets: 6709855557
      rx9_bytes: 3849522227880
      rx9_csum_complete: 6709855557
      rx9_csum_unnecessary: 0
      rx9_csum_unnecessary_inner: 0
      rx9_csum_none: 0
      rx9_xdp_drop: 0
      rx9_xdp_redirect: 0
      rx9_lro_packets: 0
      rx9_lro_bytes: 0
      rx9_ecn_mark: 0
      rx9_removed_vlan_packets: 6709855557
      rx9_wqe_err: 0
      rx9_mpwqe_filler_cqes: 0
      rx9_mpwqe_filler_strides: 0
      rx9_buff_alloc_err: 0
      rx9_cqe_compress_blks: 0
      rx9_cqe_compress_pkts: 0
      rx9_page_reuse: 0
      rx9_cache_reuse: 108980215
      rx9_cache_full: 1822730121
      rx9_cache_empty: 1423223623
      rx9_cache_busy: 1822730594
      rx9_cache_waive: 1423217187
      rx9_congst_umr: 0
      rx9_arfs_err: 0
      rx9_xdp_tx_xmit: 0
      rx9_xdp_tx_full: 0
      rx9_xdp_tx_err: 0
      rx9_xdp_tx_cqes: 0
      rx10_packets: 6761861066
      rx10_bytes: 3816266733385
      rx10_csum_complete: 6761861066
      rx10_csum_unnecessary: 0
      rx10_csum_unnecessary_inner: 0
      rx10_csum_none: 0
      rx10_xdp_drop: 0
      rx10_xdp_redirect: 0
      rx10_lro_packets: 0
      rx10_lro_bytes: 0
      rx10_ecn_mark: 0
      rx10_removed_vlan_packets: 6761861066
      rx10_wqe_err: 0
      rx10_mpwqe_filler_cqes: 0
      rx10_mpwqe_filler_strides: 0
      rx10_buff_alloc_err: 0
      rx10_cqe_compress_blks: 0
      rx10_cqe_compress_pkts: 0
      rx10_page_reuse: 0
      rx10_cache_reuse: 3489300
      rx10_cache_full: 3377440977
      rx10_cache_empty: 6656
      rx10_cache_busy: 3377441216
      rx10_cache_waive: 0
      rx10_congst_umr: 0
      rx10_arfs_err: 0
      rx10_xdp_tx_xmit: 0
      rx10_xdp_tx_full: 0
      rx10_xdp_tx_err: 0
      rx10_xdp_tx_cqes: 0
      rx11_packets: 6868113938
      rx11_bytes: 4048196300710
      rx11_csum_complete: 6868113938
      rx11_csum_unnecessary: 0
      rx11_csum_unnecessary_inner: 0
      rx11_csum_none: 0
      rx11_xdp_drop: 0
      rx11_xdp_redirect: 0
      rx11_lro_packets: 0
      rx11_lro_bytes: 0
      rx11_ecn_mark: 0
      rx11_removed_vlan_packets: 6868113938
      rx11_wqe_err: 0
      rx11_mpwqe_filler_cqes: 0
      rx11_mpwqe_filler_strides: 0
      rx11_buff_alloc_err: 0
      rx11_cqe_compress_blks: 0
      rx11_cqe_compress_pkts: 0
      rx11_page_reuse: 0
      rx11_cache_reuse: 1948516819
      rx11_cache_full: 17132157
      rx11_cache_empty: 1468413985
      rx11_cache_busy: 17132820
      rx11_cache_waive: 1468407772
      rx11_congst_umr: 0
      rx11_arfs_err: 0
      rx11_xdp_tx_xmit: 0
      rx11_xdp_tx_full: 0
      rx11_xdp_tx_err: 0
      rx11_xdp_tx_cqes: 0
      rx12_packets: 6742955386
      rx12_bytes: 3865747629271
      rx12_csum_complete: 6742955386
      rx12_csum_unnecessary: 0
      rx12_csum_unnecessary_inner: 0
      rx12_csum_none: 0
      rx12_xdp_drop: 0
      rx12_xdp_redirect: 0
      rx12_lro_packets: 0
      rx12_lro_bytes: 0
      rx12_ecn_mark: 0
      rx12_removed_vlan_packets: 6742955386
      rx12_wqe_err: 0
      rx12_mpwqe_filler_cqes: 0
      rx12_mpwqe_filler_strides: 0
      rx12_buff_alloc_err: 0
      rx12_cqe_compress_blks: 0
      rx12_cqe_compress_pkts: 0
      rx12_page_reuse: 0
      rx12_cache_reuse: 30809331
      rx12_cache_full: 3340668106
      rx12_cache_empty: 6656
      rx12_cache_busy: 3340668333
      rx12_cache_waive: 0
      rx12_congst_umr: 0
      rx12_arfs_err: 0
      rx12_xdp_tx_xmit: 0
      rx12_xdp_tx_full: 0
      rx12_xdp_tx_err: 0
      rx12_xdp_tx_cqes: 0
      rx13_packets: 6707028036
      rx13_bytes: 3813462190623
      rx13_csum_complete: 6707028036
      rx13_csum_unnecessary: 0
      rx13_csum_unnecessary_inner: 0
      rx13_csum_none: 0
      rx13_xdp_drop: 0
      rx13_xdp_redirect: 0
      rx13_lro_packets: 0
      rx13_lro_bytes: 0
      rx13_ecn_mark: 0
      rx13_removed_vlan_packets: 6707028036
      rx13_wqe_err: 0
      rx13_mpwqe_filler_cqes: 0
      rx13_mpwqe_filler_strides: 0
      rx13_buff_alloc_err: 0
      rx13_cqe_compress_blks: 0
      rx13_cqe_compress_pkts: 0
      rx13_page_reuse: 0
      rx13_cache_reuse: 14951053
      rx13_cache_full: 3338562710
      rx13_cache_empty: 6656
      rx13_cache_busy: 3338562963
      rx13_cache_waive: 0
      rx13_congst_umr: 0
      rx13_arfs_err: 0
      rx13_xdp_tx_xmit: 0
      rx13_xdp_tx_full: 0
      rx13_xdp_tx_err: 0
      rx13_xdp_tx_cqes: 0
      rx14_packets: 6737074410
      rx14_bytes: 3868905276119
      rx14_csum_complete: 6737074410
      rx14_csum_unnecessary: 0
      rx14_csum_unnecessary_inner: 0
      rx14_csum_none: 0
      rx14_xdp_drop: 0
      rx14_xdp_redirect: 0
      rx14_lro_packets: 0
      rx14_lro_bytes: 0
      rx14_ecn_mark: 0
      rx14_removed_vlan_packets: 6737074410
      rx14_wqe_err: 0
      rx14_mpwqe_filler_cqes: 0
      rx14_mpwqe_filler_strides: 0
      rx14_buff_alloc_err: 0
      rx14_cqe_compress_blks: 0
      rx14_cqe_compress_pkts: 0
      rx14_page_reuse: 0
      rx14_cache_reuse: 967799432
      rx14_cache_full: 982704312
      rx14_cache_empty: 1418039639
      rx14_cache_busy: 982704789
      rx14_cache_waive: 1418033206
      rx14_congst_umr: 0
      rx14_arfs_err: 0
      rx14_xdp_tx_xmit: 0
      rx14_xdp_tx_full: 0
      rx14_xdp_tx_err: 0
      rx14_xdp_tx_cqes: 0
      rx15_packets: 6641887441
      rx15_bytes: 3742874400402
      rx15_csum_complete: 6641887441
      rx15_csum_unnecessary: 0
      rx15_csum_unnecessary_inner: 0
      rx15_csum_none: 0
      rx15_xdp_drop: 0
      rx15_xdp_redirect: 0
      rx15_lro_packets: 0
      rx15_lro_bytes: 0
      rx15_ecn_mark: 0
      rx15_removed_vlan_packets: 6641887441
      rx15_wqe_err: 0
      rx15_mpwqe_filler_cqes: 0
      rx15_mpwqe_filler_strides: 0
      rx15_buff_alloc_err: 0
      rx15_cqe_compress_blks: 0
      rx15_cqe_compress_pkts: 0
      rx15_page_reuse: 0
      rx15_cache_reuse: 1920227538
      rx15_cache_full: 19386129
      rx15_cache_empty: 1381335137
      rx15_cache_busy: 19387693
      rx15_cache_waive: 1381329825
      rx15_congst_umr: 0
      rx15_arfs_err: 0
      rx15_xdp_tx_xmit: 0
      rx15_xdp_tx_full: 0
      rx15_xdp_tx_err: 0
      rx15_xdp_tx_cqes: 0
      rx16_packets: 5420472874
      rx16_bytes: 3079293332581
      rx16_csum_complete: 5420472874
      rx16_csum_unnecessary: 0
      rx16_csum_unnecessary_inner: 0
      rx16_csum_none: 0
      rx16_xdp_drop: 0
      rx16_xdp_redirect: 0
      rx16_lro_packets: 0
      rx16_lro_bytes: 0
      rx16_ecn_mark: 0
      rx16_removed_vlan_packets: 5420472874
      rx16_wqe_err: 0
      rx16_mpwqe_filler_cqes: 0
      rx16_mpwqe_filler_strides: 0
      rx16_buff_alloc_err: 0
      rx16_cqe_compress_blks: 0
      rx16_cqe_compress_pkts: 0
      rx16_page_reuse: 0
      rx16_cache_reuse: 2361079
      rx16_cache_full: 2707875103
      rx16_cache_empty: 6656
      rx16_cache_busy: 2707875349
      rx16_cache_waive: 0
      rx16_congst_umr: 0
      rx16_arfs_err: 0
      rx16_xdp_tx_xmit: 0
      rx16_xdp_tx_full: 0
      rx16_xdp_tx_err: 0
      rx16_xdp_tx_cqes: 0
      rx17_packets: 5428380986
      rx17_bytes: 3080981893118
      rx17_csum_complete: 5428380986
      rx17_csum_unnecessary: 0
      rx17_csum_unnecessary_inner: 0
      rx17_csum_none: 0
      rx17_xdp_drop: 0
      rx17_xdp_redirect: 0
      rx17_lro_packets: 0
      rx17_lro_bytes: 0
      rx17_ecn_mark: 0
      rx17_removed_vlan_packets: 5428380986
      rx17_wqe_err: 0
      rx17_mpwqe_filler_cqes: 0
      rx17_mpwqe_filler_strides: 0
      rx17_buff_alloc_err: 0
      rx17_cqe_compress_blks: 0
      rx17_cqe_compress_pkts: 0
      rx17_page_reuse: 0
      rx17_cache_reuse: 1552266402
      rx17_cache_full: 5947505
      rx17_cache_empty: 1155981856
      rx17_cache_busy: 5948870
      rx17_cache_waive: 1155976345
      rx17_congst_umr: 0
      rx17_arfs_err: 0
      rx17_xdp_tx_xmit: 0
      rx17_xdp_tx_full: 0
      rx17_xdp_tx_err: 0
      rx17_xdp_tx_cqes: 0
      rx18_packets: 5529118410
      rx18_bytes: 3254749573833
      rx18_csum_complete: 5529118410
      rx18_csum_unnecessary: 0
      rx18_csum_unnecessary_inner: 0
      rx18_csum_none: 0
      rx18_xdp_drop: 0
      rx18_xdp_redirect: 0
      rx18_lro_packets: 0
      rx18_lro_bytes: 0
      rx18_ecn_mark: 0
      rx18_removed_vlan_packets: 5529118410
      rx18_wqe_err: 0
      rx18_mpwqe_filler_cqes: 0
      rx18_mpwqe_filler_strides: 0
      rx18_buff_alloc_err: 0
      rx18_cqe_compress_blks: 0
      rx18_cqe_compress_pkts: 0
      rx18_page_reuse: 0
      rx18_cache_reuse: 67438840
      rx18_cache_full: 1536718472
      rx18_cache_empty: 1160408072
      rx18_cache_busy: 1536718932
      rx18_cache_waive: 1160401638
      rx18_congst_umr: 0
      rx18_arfs_err: 0
      rx18_xdp_tx_xmit: 0
      rx18_xdp_tx_full: 0
      rx18_xdp_tx_err: 0
      rx18_xdp_tx_cqes: 0
      rx19_packets: 5449932653
      rx19_bytes: 3148726579411
      rx19_csum_complete: 5449932653
      rx19_csum_unnecessary: 0
      rx19_csum_unnecessary_inner: 0
      rx19_csum_none: 0
      rx19_xdp_drop: 0
      rx19_xdp_redirect: 0
      rx19_lro_packets: 0
      rx19_lro_bytes: 0
      rx19_ecn_mark: 0
      rx19_removed_vlan_packets: 5449932653
      rx19_wqe_err: 0
      rx19_mpwqe_filler_cqes: 0
      rx19_mpwqe_filler_strides: 0
      rx19_buff_alloc_err: 0
      rx19_cqe_compress_blks: 0
      rx19_cqe_compress_pkts: 0
      rx19_page_reuse: 0
      rx19_cache_reuse: 1537841743
      rx19_cache_full: 9920960
      rx19_cache_empty: 1177208938
      rx19_cache_busy: 9922299
      rx19_cache_waive: 1177203401
      rx19_congst_umr: 0
      rx19_arfs_err: 0
      rx19_xdp_tx_xmit: 0
      rx19_xdp_tx_full: 0
      rx19_xdp_tx_err: 0
      rx19_xdp_tx_cqes: 0
      rx20_packets: 5407910071
      rx20_bytes: 3123560861922
      rx20_csum_complete: 5407910071
      rx20_csum_unnecessary: 0
      rx20_csum_unnecessary_inner: 0
      rx20_csum_none: 0
      rx20_xdp_drop: 0
      rx20_xdp_redirect: 0
      rx20_lro_packets: 0
      rx20_lro_bytes: 0
      rx20_ecn_mark: 0
      rx20_removed_vlan_packets: 5407910071
      rx20_wqe_err: 0
      rx20_mpwqe_filler_cqes: 0
      rx20_mpwqe_filler_strides: 0
      rx20_buff_alloc_err: 0
      rx20_cqe_compress_blks: 0
      rx20_cqe_compress_pkts: 0
      rx20_page_reuse: 0
      rx20_cache_reuse: 10255209
      rx20_cache_full: 2693699571
      rx20_cache_empty: 6656
      rx20_cache_busy: 2693699823
      rx20_cache_waive: 0
      rx20_congst_umr: 0
      rx20_arfs_err: 0
      rx20_xdp_tx_xmit: 0
      rx20_xdp_tx_full: 0
      rx20_xdp_tx_err: 0
      rx20_xdp_tx_cqes: 0
      rx21_packets: 5417498508
      rx21_bytes: 3131335892379
      rx21_csum_complete: 5417498508
      rx21_csum_unnecessary: 0
      rx21_csum_unnecessary_inner: 0
      rx21_csum_none: 0
      rx21_xdp_drop: 0
      rx21_xdp_redirect: 0
      rx21_lro_packets: 0
      rx21_lro_bytes: 0
      rx21_ecn_mark: 0
      rx21_removed_vlan_packets: 5417498508
      rx21_wqe_err: 0
      rx21_mpwqe_filler_cqes: 0
      rx21_mpwqe_filler_strides: 0
      rx21_buff_alloc_err: 0
      rx21_cqe_compress_blks: 0
      rx21_cqe_compress_pkts: 0
      rx21_page_reuse: 0
      rx21_cache_reuse: 192662917
      rx21_cache_full: 1374120417
      rx21_cache_empty: 1141972100
      rx21_cache_busy: 1374120891
      rx21_cache_waive: 1141965665
      rx21_congst_umr: 0
      rx21_arfs_err: 0
      rx21_xdp_tx_xmit: 0
      rx21_xdp_tx_full: 0
      rx21_xdp_tx_err: 0
      rx21_xdp_tx_cqes: 0
      rx22_packets: 5613634706
      rx22_bytes: 3240055099058
      rx22_csum_complete: 5613634706
      rx22_csum_unnecessary: 0
      rx22_csum_unnecessary_inner: 0
      rx22_csum_none: 0
      rx22_xdp_drop: 0
      rx22_xdp_redirect: 0
      rx22_lro_packets: 0
      rx22_lro_bytes: 0
      rx22_ecn_mark: 0
      rx22_removed_vlan_packets: 5613634706
      rx22_wqe_err: 0
      rx22_mpwqe_filler_cqes: 0
      rx22_mpwqe_filler_strides: 0
      rx22_buff_alloc_err: 0
      rx22_cqe_compress_blks: 0
      rx22_cqe_compress_pkts: 0
      rx22_page_reuse: 0
      rx22_cache_reuse: 12161531
      rx22_cache_full: 2794655567
      rx22_cache_empty: 6656
      rx22_cache_busy: 2794655821
      rx22_cache_waive: 0
      rx22_congst_umr: 0
      rx22_arfs_err: 0
      rx22_xdp_tx_xmit: 0
      rx22_xdp_tx_full: 0
      rx22_xdp_tx_err: 0
      rx22_xdp_tx_cqes: 0
      rx23_packets: 5389977167
      rx23_bytes: 3054270771559
      rx23_csum_complete: 5389977167
      rx23_csum_unnecessary: 0
      rx23_csum_unnecessary_inner: 0
      rx23_csum_none: 0
      rx23_xdp_drop: 0
      rx23_xdp_redirect: 0
      rx23_lro_packets: 0
      rx23_lro_bytes: 0
      rx23_ecn_mark: 0
      rx23_removed_vlan_packets: 5389977167
      rx23_wqe_err: 0
      rx23_mpwqe_filler_cqes: 0
      rx23_mpwqe_filler_strides: 0
      rx23_buff_alloc_err: 0
      rx23_cqe_compress_blks: 0
      rx23_cqe_compress_pkts: 0
      rx23_page_reuse: 0
      rx23_cache_reuse: 709328
      rx23_cache_full: 2694279000
      rx23_cache_empty: 6656
      rx23_cache_busy: 2694279252
      rx23_cache_waive: 0
      rx23_congst_umr: 0
      rx23_arfs_err: 0
      rx23_xdp_tx_xmit: 0
      rx23_xdp_tx_full: 0
      rx23_xdp_tx_err: 0
      rx23_xdp_tx_cqes: 0
      rx24_packets: 5547561932
      rx24_bytes: 3166602453443
      rx24_csum_complete: 5547561932
      rx24_csum_unnecessary: 0
      rx24_csum_unnecessary_inner: 0
      rx24_csum_none: 0
      rx24_xdp_drop: 0
      rx24_xdp_redirect: 0
      rx24_lro_packets: 0
      rx24_lro_bytes: 0
      rx24_ecn_mark: 0
      rx24_removed_vlan_packets: 5547561932
      rx24_wqe_err: 0
      rx24_mpwqe_filler_cqes: 0
      rx24_mpwqe_filler_strides: 0
      rx24_buff_alloc_err: 0
      rx24_cqe_compress_blks: 0
      rx24_cqe_compress_pkts: 0
      rx24_page_reuse: 0
      rx24_cache_reuse: 57885119
      rx24_cache_full: 1529450077
      rx24_cache_empty: 1186451948
      rx24_cache_busy: 1529450553
      rx24_cache_waive: 1186445515
      rx24_congst_umr: 0
      rx24_arfs_err: 0
      rx24_xdp_tx_xmit: 0
      rx24_xdp_tx_full: 0
      rx24_xdp_tx_err: 0
      rx24_xdp_tx_cqes: 0
      rx25_packets: 5414569326
      rx25_bytes: 3184757708091
      rx25_csum_complete: 5414569326
      rx25_csum_unnecessary: 0
      rx25_csum_unnecessary_inner: 0
      rx25_csum_none: 0
      rx25_xdp_drop: 0
      rx25_xdp_redirect: 0
      rx25_lro_packets: 0
      rx25_lro_bytes: 0
      rx25_ecn_mark: 0
      rx25_removed_vlan_packets: 5414569326
      rx25_wqe_err: 0
      rx25_mpwqe_filler_cqes: 0
      rx25_mpwqe_filler_strides: 0
      rx25_buff_alloc_err: 0
      rx25_cqe_compress_blks: 0
      rx25_cqe_compress_pkts: 0
      rx25_page_reuse: 0
      rx25_cache_reuse: 5080853
      rx25_cache_full: 2702203555
      rx25_cache_empty: 6656
      rx25_cache_busy: 2702203807
      rx25_cache_waive: 0
      rx25_congst_umr: 0
      rx25_arfs_err: 0
      rx25_xdp_tx_xmit: 0
      rx25_xdp_tx_full: 0
      rx25_xdp_tx_err: 0
      rx25_xdp_tx_cqes: 0
      rx26_packets: 5479972151
      rx26_bytes: 3110642276239
      rx26_csum_complete: 5479972151
      rx26_csum_unnecessary: 0
      rx26_csum_unnecessary_inner: 0
      rx26_csum_none: 0
      rx26_xdp_drop: 0
      rx26_xdp_redirect: 0
      rx26_lro_packets: 0
      rx26_lro_bytes: 0
      rx26_ecn_mark: 0
      rx26_removed_vlan_packets: 5479972151
      rx26_wqe_err: 0
      rx26_mpwqe_filler_cqes: 0
      rx26_mpwqe_filler_strides: 0
      rx26_buff_alloc_err: 0
      rx26_cqe_compress_blks: 0
      rx26_cqe_compress_pkts: 0
      rx26_page_reuse: 0
      rx26_cache_reuse: 26543335
      rx26_cache_full: 2713442485
      rx26_cache_empty: 6656
      rx26_cache_busy: 2713442737
      rx26_cache_waive: 0
      rx26_congst_umr: 0
      rx26_arfs_err: 0
      rx26_xdp_tx_xmit: 0
      rx26_xdp_tx_full: 0
      rx26_xdp_tx_err: 0
      rx26_xdp_tx_cqes: 0
      rx27_packets: 5337113900
      rx27_bytes: 3068966906075
      rx27_csum_complete: 5337113900
      rx27_csum_unnecessary: 0
      rx27_csum_unnecessary_inner: 0
      rx27_csum_none: 0
      rx27_xdp_drop: 0
      rx27_xdp_redirect: 0
      rx27_lro_packets: 0
      rx27_lro_bytes: 0
      rx27_ecn_mark: 0
      rx27_removed_vlan_packets: 5337113900
      rx27_wqe_err: 0
      rx27_mpwqe_filler_cqes: 0
      rx27_mpwqe_filler_strides: 0
      rx27_buff_alloc_err: 0
      rx27_cqe_compress_blks: 0
      rx27_cqe_compress_pkts: 0
      rx27_page_reuse: 0
      rx27_cache_reuse: 1539298962
      rx27_cache_full: 10861919
      rx27_cache_empty: 1117173179
      rx27_cache_busy: 12091463
      rx27_cache_waive: 1118395847
      rx27_congst_umr: 0
      rx27_arfs_err: 0
      rx27_xdp_tx_xmit: 0
      rx27_xdp_tx_full: 0
      rx27_xdp_tx_err: 0
      rx27_xdp_tx_cqes: 0
      rx28_packets: 0
      rx28_bytes: 0
      rx28_csum_complete: 0
      rx28_csum_unnecessary: 0
      rx28_csum_unnecessary_inner: 0
      rx28_csum_none: 0
      rx28_xdp_drop: 0
      rx28_xdp_redirect: 0
      rx28_lro_packets: 0
      rx28_lro_bytes: 0
      rx28_ecn_mark: 0
      rx28_removed_vlan_packets: 0
      rx28_wqe_err: 0
      rx28_mpwqe_filler_cqes: 0
      rx28_mpwqe_filler_strides: 0
      rx28_buff_alloc_err: 0
      rx28_cqe_compress_blks: 0
      rx28_cqe_compress_pkts: 0
      rx28_page_reuse: 0
      rx28_cache_reuse: 0
      rx28_cache_full: 0
      rx28_cache_empty: 2560
      rx28_cache_busy: 0
      rx28_cache_waive: 0
      rx28_congst_umr: 0
      rx28_arfs_err: 0
      rx28_xdp_tx_xmit: 0
      rx28_xdp_tx_full: 0
      rx28_xdp_tx_err: 0
      rx28_xdp_tx_cqes: 0
      rx29_packets: 0
      rx29_bytes: 0
      rx29_csum_complete: 0
      rx29_csum_unnecessary: 0
      rx29_csum_unnecessary_inner: 0
      rx29_csum_none: 0
      rx29_xdp_drop: 0
      rx29_xdp_redirect: 0
      rx29_lro_packets: 0
      rx29_lro_bytes: 0
      rx29_ecn_mark: 0
      rx29_removed_vlan_packets: 0
      rx29_wqe_err: 0
      rx29_mpwqe_filler_cqes: 0
      rx29_mpwqe_filler_strides: 0
      rx29_buff_alloc_err: 0
      rx29_cqe_compress_blks: 0
      rx29_cqe_compress_pkts: 0
      rx29_page_reuse: 0
      rx29_cache_reuse: 0
      rx29_cache_full: 0
      rx29_cache_empty: 2560
      rx29_cache_busy: 0
      rx29_cache_waive: 0
      rx29_congst_umr: 0
      rx29_arfs_err: 0
      rx29_xdp_tx_xmit: 0
      rx29_xdp_tx_full: 0
      rx29_xdp_tx_err: 0
      rx29_xdp_tx_cqes: 0
      rx30_packets: 0
      rx30_bytes: 0
      rx30_csum_complete: 0
      rx30_csum_unnecessary: 0
      rx30_csum_unnecessary_inner: 0
      rx30_csum_none: 0
      rx30_xdp_drop: 0
      rx30_xdp_redirect: 0
      rx30_lro_packets: 0
      rx30_lro_bytes: 0
      rx30_ecn_mark: 0
      rx30_removed_vlan_packets: 0
      rx30_wqe_err: 0
      rx30_mpwqe_filler_cqes: 0
      rx30_mpwqe_filler_strides: 0
      rx30_buff_alloc_err: 0
      rx30_cqe_compress_blks: 0
      rx30_cqe_compress_pkts: 0
      rx30_page_reuse: 0
      rx30_cache_reuse: 0
      rx30_cache_full: 0
      rx30_cache_empty: 2560
      rx30_cache_busy: 0
      rx30_cache_waive: 0
      rx30_congst_umr: 0
      rx30_arfs_err: 0
      rx30_xdp_tx_xmit: 0
      rx30_xdp_tx_full: 0
      rx30_xdp_tx_err: 0
      rx30_xdp_tx_cqes: 0
      rx31_packets: 0
      rx31_bytes: 0
      rx31_csum_complete: 0
      rx31_csum_unnecessary: 0
      rx31_csum_unnecessary_inner: 0
      rx31_csum_none: 0
      rx31_xdp_drop: 0
      rx31_xdp_redirect: 0
      rx31_lro_packets: 0
      rx31_lro_bytes: 0
      rx31_ecn_mark: 0
      rx31_removed_vlan_packets: 0
      rx31_wqe_err: 0
      rx31_mpwqe_filler_cqes: 0
      rx31_mpwqe_filler_strides: 0
      rx31_buff_alloc_err: 0
      rx31_cqe_compress_blks: 0
      rx31_cqe_compress_pkts: 0
      rx31_page_reuse: 0
      rx31_cache_reuse: 0
      rx31_cache_full: 0
      rx31_cache_empty: 2560
      rx31_cache_busy: 0
      rx31_cache_waive: 0
      rx31_congst_umr: 0
      rx31_arfs_err: 0
      rx31_xdp_tx_xmit: 0
      rx31_xdp_tx_full: 0
      rx31_xdp_tx_err: 0
      rx31_xdp_tx_cqes: 0
      rx32_packets: 0
      rx32_bytes: 0
      rx32_csum_complete: 0
      rx32_csum_unnecessary: 0
      rx32_csum_unnecessary_inner: 0
      rx32_csum_none: 0
      rx32_xdp_drop: 0
      rx32_xdp_redirect: 0
      rx32_lro_packets: 0
      rx32_lro_bytes: 0
      rx32_ecn_mark: 0
      rx32_removed_vlan_packets: 0
      rx32_wqe_err: 0
      rx32_mpwqe_filler_cqes: 0
      rx32_mpwqe_filler_strides: 0
      rx32_buff_alloc_err: 0
      rx32_cqe_compress_blks: 0
      rx32_cqe_compress_pkts: 0
      rx32_page_reuse: 0
      rx32_cache_reuse: 0
      rx32_cache_full: 0
      rx32_cache_empty: 2560
      rx32_cache_busy: 0
      rx32_cache_waive: 0
      rx32_congst_umr: 0
      rx32_arfs_err: 0
      rx32_xdp_tx_xmit: 0
      rx32_xdp_tx_full: 0
      rx32_xdp_tx_err: 0
      rx32_xdp_tx_cqes: 0
      rx33_packets: 0
      rx33_bytes: 0
      rx33_csum_complete: 0
      rx33_csum_unnecessary: 0
      rx33_csum_unnecessary_inner: 0
      rx33_csum_none: 0
      rx33_xdp_drop: 0
      rx33_xdp_redirect: 0
      rx33_lro_packets: 0
      rx33_lro_bytes: 0
      rx33_ecn_mark: 0
      rx33_removed_vlan_packets: 0
      rx33_wqe_err: 0
      rx33_mpwqe_filler_cqes: 0
      rx33_mpwqe_filler_strides: 0
      rx33_buff_alloc_err: 0
      rx33_cqe_compress_blks: 0
      rx33_cqe_compress_pkts: 0
      rx33_page_reuse: 0
      rx33_cache_reuse: 0
      rx33_cache_full: 0
      rx33_cache_empty: 2560
      rx33_cache_busy: 0
      rx33_cache_waive: 0
      rx33_congst_umr: 0
      rx33_arfs_err: 0
      rx33_xdp_tx_xmit: 0
      rx33_xdp_tx_full: 0
      rx33_xdp_tx_err: 0
      rx33_xdp_tx_cqes: 0
      rx34_packets: 0
      rx34_bytes: 0
      rx34_csum_complete: 0
      rx34_csum_unnecessary: 0
      rx34_csum_unnecessary_inner: 0
      rx34_csum_none: 0
      rx34_xdp_drop: 0
      rx34_xdp_redirect: 0
      rx34_lro_packets: 0
      rx34_lro_bytes: 0
      rx34_ecn_mark: 0
      rx34_removed_vlan_packets: 0
      rx34_wqe_err: 0
      rx34_mpwqe_filler_cqes: 0
      rx34_mpwqe_filler_strides: 0
      rx34_buff_alloc_err: 0
      rx34_cqe_compress_blks: 0
      rx34_cqe_compress_pkts: 0
      rx34_page_reuse: 0
      rx34_cache_reuse: 0
      rx34_cache_full: 0
      rx34_cache_empty: 2560
      rx34_cache_busy: 0
      rx34_cache_waive: 0
      rx34_congst_umr: 0
      rx34_arfs_err: 0
      rx34_xdp_tx_xmit: 0
      rx34_xdp_tx_full: 0
      rx34_xdp_tx_err: 0
      rx34_xdp_tx_cqes: 0
      rx35_packets: 0
      rx35_bytes: 0
      rx35_csum_complete: 0
      rx35_csum_unnecessary: 0
      rx35_csum_unnecessary_inner: 0
      rx35_csum_none: 0
      rx35_xdp_drop: 0
      rx35_xdp_redirect: 0
      rx35_lro_packets: 0
      rx35_lro_bytes: 0
      rx35_ecn_mark: 0
      rx35_removed_vlan_packets: 0
      rx35_wqe_err: 0
      rx35_mpwqe_filler_cqes: 0
      rx35_mpwqe_filler_strides: 0
      rx35_buff_alloc_err: 0
      rx35_cqe_compress_blks: 0
      rx35_cqe_compress_pkts: 0
      rx35_page_reuse: 0
      rx35_cache_reuse: 0
      rx35_cache_full: 0
      rx35_cache_empty: 2560
      rx35_cache_busy: 0
      rx35_cache_waive: 0
      rx35_congst_umr: 0
      rx35_arfs_err: 0
      rx35_xdp_tx_xmit: 0
      rx35_xdp_tx_full: 0
      rx35_xdp_tx_err: 0
      rx35_xdp_tx_cqes: 0
      rx36_packets: 0
      rx36_bytes: 0
      rx36_csum_complete: 0
      rx36_csum_unnecessary: 0
      rx36_csum_unnecessary_inner: 0
      rx36_csum_none: 0
      rx36_xdp_drop: 0
      rx36_xdp_redirect: 0
      rx36_lro_packets: 0
      rx36_lro_bytes: 0
      rx36_ecn_mark: 0
      rx36_removed_vlan_packets: 0
      rx36_wqe_err: 0
      rx36_mpwqe_filler_cqes: 0
      rx36_mpwqe_filler_strides: 0
      rx36_buff_alloc_err: 0
      rx36_cqe_compress_blks: 0
      rx36_cqe_compress_pkts: 0
      rx36_page_reuse: 0
      rx36_cache_reuse: 0
      rx36_cache_full: 0
      rx36_cache_empty: 2560
      rx36_cache_busy: 0
      rx36_cache_waive: 0
      rx36_congst_umr: 0
      rx36_arfs_err: 0
      rx36_xdp_tx_xmit: 0
      rx36_xdp_tx_full: 0
      rx36_xdp_tx_err: 0
      rx36_xdp_tx_cqes: 0
      rx37_packets: 0
      rx37_bytes: 0
      rx37_csum_complete: 0
      rx37_csum_unnecessary: 0
      rx37_csum_unnecessary_inner: 0
      rx37_csum_none: 0
      rx37_xdp_drop: 0
      rx37_xdp_redirect: 0
      rx37_lro_packets: 0
      rx37_lro_bytes: 0
      rx37_ecn_mark: 0
      rx37_removed_vlan_packets: 0
      rx37_wqe_err: 0
      rx37_mpwqe_filler_cqes: 0
      rx37_mpwqe_filler_strides: 0
      rx37_buff_alloc_err: 0
      rx37_cqe_compress_blks: 0
      rx37_cqe_compress_pkts: 0
      rx37_page_reuse: 0
      rx37_cache_reuse: 0
      rx37_cache_full: 0
      rx37_cache_empty: 2560
      rx37_cache_busy: 0
      rx37_cache_waive: 0
      rx37_congst_umr: 0
      rx37_arfs_err: 0
      rx37_xdp_tx_xmit: 0
      rx37_xdp_tx_full: 0
      rx37_xdp_tx_err: 0
      rx37_xdp_tx_cqes: 0
      rx38_packets: 0
      rx38_bytes: 0
      rx38_csum_complete: 0
      rx38_csum_unnecessary: 0
      rx38_csum_unnecessary_inner: 0
      rx38_csum_none: 0
      rx38_xdp_drop: 0
      rx38_xdp_redirect: 0
      rx38_lro_packets: 0
      rx38_lro_bytes: 0
      rx38_ecn_mark: 0
      rx38_removed_vlan_packets: 0
      rx38_wqe_err: 0
      rx38_mpwqe_filler_cqes: 0
      rx38_mpwqe_filler_strides: 0
      rx38_buff_alloc_err: 0
      rx38_cqe_compress_blks: 0
      rx38_cqe_compress_pkts: 0
      rx38_page_reuse: 0
      rx38_cache_reuse: 0
      rx38_cache_full: 0
      rx38_cache_empty: 2560
      rx38_cache_busy: 0
      rx38_cache_waive: 0
      rx38_congst_umr: 0
      rx38_arfs_err: 0
      rx38_xdp_tx_xmit: 0
      rx38_xdp_tx_full: 0
      rx38_xdp_tx_err: 0
      rx38_xdp_tx_cqes: 0
      rx39_packets: 0
      rx39_bytes: 0
      rx39_csum_complete: 0
      rx39_csum_unnecessary: 0
      rx39_csum_unnecessary_inner: 0
      rx39_csum_none: 0
      rx39_xdp_drop: 0
      rx39_xdp_redirect: 0
      rx39_lro_packets: 0
      rx39_lro_bytes: 0
      rx39_ecn_mark: 0
      rx39_removed_vlan_packets: 0
      rx39_wqe_err: 0
      rx39_mpwqe_filler_cqes: 0
      rx39_mpwqe_filler_strides: 0
      rx39_buff_alloc_err: 0
      rx39_cqe_compress_blks: 0
      rx39_cqe_compress_pkts: 0
      rx39_page_reuse: 0
      rx39_cache_reuse: 0
      rx39_cache_full: 0
      rx39_cache_empty: 2560
      rx39_cache_busy: 0
      rx39_cache_waive: 0
      rx39_congst_umr: 0
      rx39_arfs_err: 0
      rx39_xdp_tx_xmit: 0
      rx39_xdp_tx_full: 0
      rx39_xdp_tx_err: 0
      rx39_xdp_tx_cqes: 0
      rx40_packets: 0
      rx40_bytes: 0
      rx40_csum_complete: 0
      rx40_csum_unnecessary: 0
      rx40_csum_unnecessary_inner: 0
      rx40_csum_none: 0
      rx40_xdp_drop: 0
      rx40_xdp_redirect: 0
      rx40_lro_packets: 0
      rx40_lro_bytes: 0
      rx40_ecn_mark: 0
      rx40_removed_vlan_packets: 0
      rx40_wqe_err: 0
      rx40_mpwqe_filler_cqes: 0
      rx40_mpwqe_filler_strides: 0
      rx40_buff_alloc_err: 0
      rx40_cqe_compress_blks: 0
      rx40_cqe_compress_pkts: 0
      rx40_page_reuse: 0
      rx40_cache_reuse: 0
      rx40_cache_full: 0
      rx40_cache_empty: 2560
      rx40_cache_busy: 0
      rx40_cache_waive: 0
      rx40_congst_umr: 0
      rx40_arfs_err: 0
      rx40_xdp_tx_xmit: 0
      rx40_xdp_tx_full: 0
      rx40_xdp_tx_err: 0
      rx40_xdp_tx_cqes: 0
      rx41_packets: 0
      rx41_bytes: 0
      rx41_csum_complete: 0
      rx41_csum_unnecessary: 0
      rx41_csum_unnecessary_inner: 0
      rx41_csum_none: 0
      rx41_xdp_drop: 0
      rx41_xdp_redirect: 0
      rx41_lro_packets: 0
      rx41_lro_bytes: 0
      rx41_ecn_mark: 0
      rx41_removed_vlan_packets: 0
      rx41_wqe_err: 0
      rx41_mpwqe_filler_cqes: 0
      rx41_mpwqe_filler_strides: 0
      rx41_buff_alloc_err: 0
      rx41_cqe_compress_blks: 0
      rx41_cqe_compress_pkts: 0
      rx41_page_reuse: 0
      rx41_cache_reuse: 0
      rx41_cache_full: 0
      rx41_cache_empty: 2560
      rx41_cache_busy: 0
      rx41_cache_waive: 0
      rx41_congst_umr: 0
      rx41_arfs_err: 0
      rx41_xdp_tx_xmit: 0
      rx41_xdp_tx_full: 0
      rx41_xdp_tx_err: 0
      rx41_xdp_tx_cqes: 0
      rx42_packets: 0
      rx42_bytes: 0
      rx42_csum_complete: 0
      rx42_csum_unnecessary: 0
      rx42_csum_unnecessary_inner: 0
      rx42_csum_none: 0
      rx42_xdp_drop: 0
      rx42_xdp_redirect: 0
      rx42_lro_packets: 0
      rx42_lro_bytes: 0
      rx42_ecn_mark: 0
      rx42_removed_vlan_packets: 0
      rx42_wqe_err: 0
      rx42_mpwqe_filler_cqes: 0
      rx42_mpwqe_filler_strides: 0
      rx42_buff_alloc_err: 0
      rx42_cqe_compress_blks: 0
      rx42_cqe_compress_pkts: 0
      rx42_page_reuse: 0
      rx42_cache_reuse: 0
      rx42_cache_full: 0
      rx42_cache_empty: 2560
      rx42_cache_busy: 0
      rx42_cache_waive: 0
      rx42_congst_umr: 0
      rx42_arfs_err: 0
      rx42_xdp_tx_xmit: 0
      rx42_xdp_tx_full: 0
      rx42_xdp_tx_err: 0
      rx42_xdp_tx_cqes: 0
      rx43_packets: 0
      rx43_bytes: 0
      rx43_csum_complete: 0
      rx43_csum_unnecessary: 0
      rx43_csum_unnecessary_inner: 0
      rx43_csum_none: 0
      rx43_xdp_drop: 0
      rx43_xdp_redirect: 0
      rx43_lro_packets: 0
      rx43_lro_bytes: 0
      rx43_ecn_mark: 0
      rx43_removed_vlan_packets: 0
      rx43_wqe_err: 0
      rx43_mpwqe_filler_cqes: 0
      rx43_mpwqe_filler_strides: 0
      rx43_buff_alloc_err: 0
      rx43_cqe_compress_blks: 0
      rx43_cqe_compress_pkts: 0
      rx43_page_reuse: 0
      rx43_cache_reuse: 0
      rx43_cache_full: 0
      rx43_cache_empty: 2560
      rx43_cache_busy: 0
      rx43_cache_waive: 0
      rx43_congst_umr: 0
      rx43_arfs_err: 0
      rx43_xdp_tx_xmit: 0
      rx43_xdp_tx_full: 0
      rx43_xdp_tx_err: 0
      rx43_xdp_tx_cqes: 0
      rx44_packets: 0
      rx44_bytes: 0
      rx44_csum_complete: 0
      rx44_csum_unnecessary: 0
      rx44_csum_unnecessary_inner: 0
      rx44_csum_none: 0
      rx44_xdp_drop: 0
      rx44_xdp_redirect: 0
      rx44_lro_packets: 0
      rx44_lro_bytes: 0
      rx44_ecn_mark: 0
      rx44_removed_vlan_packets: 0
      rx44_wqe_err: 0
      rx44_mpwqe_filler_cqes: 0
      rx44_mpwqe_filler_strides: 0
      rx44_buff_alloc_err: 0
      rx44_cqe_compress_blks: 0
      rx44_cqe_compress_pkts: 0
      rx44_page_reuse: 0
      rx44_cache_reuse: 0
      rx44_cache_full: 0
      rx44_cache_empty: 2560
      rx44_cache_busy: 0
      rx44_cache_waive: 0
      rx44_congst_umr: 0
      rx44_arfs_err: 0
      rx44_xdp_tx_xmit: 0
      rx44_xdp_tx_full: 0
      rx44_xdp_tx_err: 0
      rx44_xdp_tx_cqes: 0
      rx45_packets: 0
      rx45_bytes: 0
      rx45_csum_complete: 0
      rx45_csum_unnecessary: 0
      rx45_csum_unnecessary_inner: 0
      rx45_csum_none: 0
      rx45_xdp_drop: 0
      rx45_xdp_redirect: 0
      rx45_lro_packets: 0
      rx45_lro_bytes: 0
      rx45_ecn_mark: 0
      rx45_removed_vlan_packets: 0
      rx45_wqe_err: 0
      rx45_mpwqe_filler_cqes: 0
      rx45_mpwqe_filler_strides: 0
      rx45_buff_alloc_err: 0
      rx45_cqe_compress_blks: 0
      rx45_cqe_compress_pkts: 0
      rx45_page_reuse: 0
      rx45_cache_reuse: 0
      rx45_cache_full: 0
      rx45_cache_empty: 2560
      rx45_cache_busy: 0
      rx45_cache_waive: 0
      rx45_congst_umr: 0
      rx45_arfs_err: 0
      rx45_xdp_tx_xmit: 0
      rx45_xdp_tx_full: 0
      rx45_xdp_tx_err: 0
      rx45_xdp_tx_cqes: 0
      rx46_packets: 0
      rx46_bytes: 0
      rx46_csum_complete: 0
      rx46_csum_unnecessary: 0
      rx46_csum_unnecessary_inner: 0
      rx46_csum_none: 0
      rx46_xdp_drop: 0
      rx46_xdp_redirect: 0
      rx46_lro_packets: 0
      rx46_lro_bytes: 0
      rx46_ecn_mark: 0
      rx46_removed_vlan_packets: 0
      rx46_wqe_err: 0
      rx46_mpwqe_filler_cqes: 0
      rx46_mpwqe_filler_strides: 0
      rx46_buff_alloc_err: 0
      rx46_cqe_compress_blks: 0
      rx46_cqe_compress_pkts: 0
      rx46_page_reuse: 0
      rx46_cache_reuse: 0
      rx46_cache_full: 0
      rx46_cache_empty: 2560
      rx46_cache_busy: 0
      rx46_cache_waive: 0
      rx46_congst_umr: 0
      rx46_arfs_err: 0
      rx46_xdp_tx_xmit: 0
      rx46_xdp_tx_full: 0
      rx46_xdp_tx_err: 0
      rx46_xdp_tx_cqes: 0
      rx47_packets: 0
      rx47_bytes: 0
      rx47_csum_complete: 0
      rx47_csum_unnecessary: 0
      rx47_csum_unnecessary_inner: 0
      rx47_csum_none: 0
      rx47_xdp_drop: 0
      rx47_xdp_redirect: 0
      rx47_lro_packets: 0
      rx47_lro_bytes: 0
      rx47_ecn_mark: 0
      rx47_removed_vlan_packets: 0
      rx47_wqe_err: 0
      rx47_mpwqe_filler_cqes: 0
      rx47_mpwqe_filler_strides: 0
      rx47_buff_alloc_err: 0
      rx47_cqe_compress_blks: 0
      rx47_cqe_compress_pkts: 0
      rx47_page_reuse: 0
      rx47_cache_reuse: 0
      rx47_cache_full: 0
      rx47_cache_empty: 2560
      rx47_cache_busy: 0
      rx47_cache_waive: 0
      rx47_congst_umr: 0
      rx47_arfs_err: 0
      rx47_xdp_tx_xmit: 0
      rx47_xdp_tx_full: 0
      rx47_xdp_tx_err: 0
      rx47_xdp_tx_cqes: 0
      rx48_packets: 0
      rx48_bytes: 0
      rx48_csum_complete: 0
      rx48_csum_unnecessary: 0
      rx48_csum_unnecessary_inner: 0
      rx48_csum_none: 0
      rx48_xdp_drop: 0
      rx48_xdp_redirect: 0
      rx48_lro_packets: 0
      rx48_lro_bytes: 0
      rx48_ecn_mark: 0
      rx48_removed_vlan_packets: 0
      rx48_wqe_err: 0
      rx48_mpwqe_filler_cqes: 0
      rx48_mpwqe_filler_strides: 0
      rx48_buff_alloc_err: 0
      rx48_cqe_compress_blks: 0
      rx48_cqe_compress_pkts: 0
      rx48_page_reuse: 0
      rx48_cache_reuse: 0
      rx48_cache_full: 0
      rx48_cache_empty: 2560
      rx48_cache_busy: 0
      rx48_cache_waive: 0
      rx48_congst_umr: 0
      rx48_arfs_err: 0
      rx48_xdp_tx_xmit: 0
      rx48_xdp_tx_full: 0
      rx48_xdp_tx_err: 0
      rx48_xdp_tx_cqes: 0
      rx49_packets: 0
      rx49_bytes: 0
      rx49_csum_complete: 0
      rx49_csum_unnecessary: 0
      rx49_csum_unnecessary_inner: 0
      rx49_csum_none: 0
      rx49_xdp_drop: 0
      rx49_xdp_redirect: 0
      rx49_lro_packets: 0
      rx49_lro_bytes: 0
      rx49_ecn_mark: 0
      rx49_removed_vlan_packets: 0
      rx49_wqe_err: 0
      rx49_mpwqe_filler_cqes: 0
      rx49_mpwqe_filler_strides: 0
      rx49_buff_alloc_err: 0
      rx49_cqe_compress_blks: 0
      rx49_cqe_compress_pkts: 0
      rx49_page_reuse: 0
      rx49_cache_reuse: 0
      rx49_cache_full: 0
      rx49_cache_empty: 2560
      rx49_cache_busy: 0
      rx49_cache_waive: 0
      rx49_congst_umr: 0
      rx49_arfs_err: 0
      rx49_xdp_tx_xmit: 0
      rx49_xdp_tx_full: 0
      rx49_xdp_tx_err: 0
      rx49_xdp_tx_cqes: 0
      rx50_packets: 0
      rx50_bytes: 0
      rx50_csum_complete: 0
      rx50_csum_unnecessary: 0
      rx50_csum_unnecessary_inner: 0
      rx50_csum_none: 0
      rx50_xdp_drop: 0
      rx50_xdp_redirect: 0
      rx50_lro_packets: 0
      rx50_lro_bytes: 0
      rx50_ecn_mark: 0
      rx50_removed_vlan_packets: 0
      rx50_wqe_err: 0
      rx50_mpwqe_filler_cqes: 0
      rx50_mpwqe_filler_strides: 0
      rx50_buff_alloc_err: 0
      rx50_cqe_compress_blks: 0
      rx50_cqe_compress_pkts: 0
      rx50_page_reuse: 0
      rx50_cache_reuse: 0
      rx50_cache_full: 0
      rx50_cache_empty: 2560
      rx50_cache_busy: 0
      rx50_cache_waive: 0
      rx50_congst_umr: 0
      rx50_arfs_err: 0
      rx50_xdp_tx_xmit: 0
      rx50_xdp_tx_full: 0
      rx50_xdp_tx_err: 0
      rx50_xdp_tx_cqes: 0
      rx51_packets: 0
      rx51_bytes: 0
      rx51_csum_complete: 0
      rx51_csum_unnecessary: 0
      rx51_csum_unnecessary_inner: 0
      rx51_csum_none: 0
      rx51_xdp_drop: 0
      rx51_xdp_redirect: 0
      rx51_lro_packets: 0
      rx51_lro_bytes: 0
      rx51_ecn_mark: 0
      rx51_removed_vlan_packets: 0
      rx51_wqe_err: 0
      rx51_mpwqe_filler_cqes: 0
      rx51_mpwqe_filler_strides: 0
      rx51_buff_alloc_err: 0
      rx51_cqe_compress_blks: 0
      rx51_cqe_compress_pkts: 0
      rx51_page_reuse: 0
      rx51_cache_reuse: 0
      rx51_cache_full: 0
      rx51_cache_empty: 2560
      rx51_cache_busy: 0
      rx51_cache_waive: 0
      rx51_congst_umr: 0
      rx51_arfs_err: 0
      rx51_xdp_tx_xmit: 0
      rx51_xdp_tx_full: 0
      rx51_xdp_tx_err: 0
      rx51_xdp_tx_cqes: 0
      rx52_packets: 0
      rx52_bytes: 0
      rx52_csum_complete: 0
      rx52_csum_unnecessary: 0
      rx52_csum_unnecessary_inner: 0
      rx52_csum_none: 0
      rx52_xdp_drop: 0
      rx52_xdp_redirect: 0
      rx52_lro_packets: 0
      rx52_lro_bytes: 0
      rx52_ecn_mark: 0
      rx52_removed_vlan_packets: 0
      rx52_wqe_err: 0
      rx52_mpwqe_filler_cqes: 0
      rx52_mpwqe_filler_strides: 0
      rx52_buff_alloc_err: 0
      rx52_cqe_compress_blks: 0
      rx52_cqe_compress_pkts: 0
      rx52_page_reuse: 0
      rx52_cache_reuse: 0
      rx52_cache_full: 0
      rx52_cache_empty: 2560
      rx52_cache_busy: 0
      rx52_cache_waive: 0
      rx52_congst_umr: 0
      rx52_arfs_err: 0
      rx52_xdp_tx_xmit: 0
      rx52_xdp_tx_full: 0
      rx52_xdp_tx_err: 0
      rx52_xdp_tx_cqes: 0
      rx53_packets: 0
      rx53_bytes: 0
      rx53_csum_complete: 0
      rx53_csum_unnecessary: 0
      rx53_csum_unnecessary_inner: 0
      rx53_csum_none: 0
      rx53_xdp_drop: 0
      rx53_xdp_redirect: 0
      rx53_lro_packets: 0
      rx53_lro_bytes: 0
      rx53_ecn_mark: 0
      rx53_removed_vlan_packets: 0
      rx53_wqe_err: 0
      rx53_mpwqe_filler_cqes: 0
      rx53_mpwqe_filler_strides: 0
      rx53_buff_alloc_err: 0
      rx53_cqe_compress_blks: 0
      rx53_cqe_compress_pkts: 0
      rx53_page_reuse: 0
      rx53_cache_reuse: 0
      rx53_cache_full: 0
      rx53_cache_empty: 2560
      rx53_cache_busy: 0
      rx53_cache_waive: 0
      rx53_congst_umr: 0
      rx53_arfs_err: 0
      rx53_xdp_tx_xmit: 0
      rx53_xdp_tx_full: 0
      rx53_xdp_tx_err: 0
      rx53_xdp_tx_cqes: 0
      rx54_packets: 0
      rx54_bytes: 0
      rx54_csum_complete: 0
      rx54_csum_unnecessary: 0
      rx54_csum_unnecessary_inner: 0
      rx54_csum_none: 0
      rx54_xdp_drop: 0
      rx54_xdp_redirect: 0
      rx54_lro_packets: 0
      rx54_lro_bytes: 0
      rx54_ecn_mark: 0
      rx54_removed_vlan_packets: 0
      rx54_wqe_err: 0
      rx54_mpwqe_filler_cqes: 0
      rx54_mpwqe_filler_strides: 0
      rx54_buff_alloc_err: 0
      rx54_cqe_compress_blks: 0
      rx54_cqe_compress_pkts: 0
      rx54_page_reuse: 0
      rx54_cache_reuse: 0
      rx54_cache_full: 0
      rx54_cache_empty: 2560
      rx54_cache_busy: 0
      rx54_cache_waive: 0
      rx54_congst_umr: 0
      rx54_arfs_err: 0
      rx54_xdp_tx_xmit: 0
      rx54_xdp_tx_full: 0
      rx54_xdp_tx_err: 0
      rx54_xdp_tx_cqes: 0
      rx55_packets: 0
      rx55_bytes: 0
      rx55_csum_complete: 0
      rx55_csum_unnecessary: 0
      rx55_csum_unnecessary_inner: 0
      rx55_csum_none: 0
      rx55_xdp_drop: 0
      rx55_xdp_redirect: 0
      rx55_lro_packets: 0
      rx55_lro_bytes: 0
      rx55_ecn_mark: 0
      rx55_removed_vlan_packets: 0
      rx55_wqe_err: 0
      rx55_mpwqe_filler_cqes: 0
      rx55_mpwqe_filler_strides: 0
      rx55_buff_alloc_err: 0
      rx55_cqe_compress_blks: 0
      rx55_cqe_compress_pkts: 0
      rx55_page_reuse: 0
      rx55_cache_reuse: 0
      rx55_cache_full: 0
      rx55_cache_empty: 2560
      rx55_cache_busy: 0
      rx55_cache_waive: 0
      rx55_congst_umr: 0
      rx55_arfs_err: 0
      rx55_xdp_tx_xmit: 0
      rx55_xdp_tx_full: 0
      rx55_xdp_tx_err: 0
      rx55_xdp_tx_cqes: 0
      tx0_packets: 5868971166
      tx0_bytes: 7384241881537
      tx0_tso_packets: 1005089669
      tx0_tso_bytes: 5138882499687
      tx0_tso_inner_packets: 0
      tx0_tso_inner_bytes: 0
      tx0_csum_partial: 1405330470
      tx0_csum_partial_inner: 0
      tx0_added_vlan_packets: 3247061022
      tx0_nop: 83925216
      tx0_csum_none: 1841730552
      tx0_stopped: 0
      tx0_dropped: 0
      tx0_xmit_more: 29664303
      tx0_recover: 0
      tx0_cqes: 3217398842
      tx0_wake: 0
      tx0_cqe_err: 0
      tx1_packets: 5599378674
      tx1_bytes: 7272236466962
      tx1_tso_packets: 1024612268
      tx1_tso_bytes: 5244192050917
      tx1_tso_inner_packets: 0
      tx1_tso_inner_bytes: 0
      tx1_csum_partial: 1438007932
      tx1_csum_partial_inner: 0
      tx1_added_vlan_packets: 2919765857
      tx1_nop: 79661231
      tx1_csum_none: 1481757925
      tx1_stopped: 0
      tx1_dropped: 0
      tx1_xmit_more: 29485355
      tx1_recover: 0
      tx1_cqes: 2890282176
      tx1_wake: 0
      tx1_cqe_err: 0
      tx2_packets: 5413821094
      tx2_bytes: 7033951631334
      tx2_tso_packets: 1002868589
      tx2_tso_bytes: 5089549008985
      tx2_tso_inner_packets: 0
      tx2_tso_inner_bytes: 0
      tx2_csum_partial: 1404186175
      tx2_csum_partial_inner: 0
      tx2_added_vlan_packets: 2822670460
      tx2_nop: 77115408
      tx2_csum_none: 1418484285
      tx2_stopped: 0
      tx2_dropped: 0
      tx2_xmit_more: 29321129
      tx2_recover: 0
      tx2_cqes: 2793351019
      tx2_wake: 0
      tx2_cqe_err: 0
      tx3_packets: 5479609727
      tx3_bytes: 7116904107659
      tx3_tso_packets: 1002992639
      tx3_tso_bytes: 5154225081979
      tx3_tso_inner_packets: 0
      tx3_tso_inner_bytes: 0
      tx3_csum_partial: 1415739849
      tx3_csum_partial_inner: 0
      tx3_added_vlan_packets: 2842823811
      tx3_nop: 78060813
      tx3_csum_none: 1427083971
      tx3_stopped: 0
      tx3_dropped: 0
      tx3_xmit_more: 28575040
      tx3_recover: 0
      tx3_cqes: 2814250785
      tx3_wake: 0
      tx3_cqe_err: 0
      tx4_packets: 5508297397
      tx4_bytes: 7127659369902
      tx4_tso_packets: 1007356432
      tx4_tso_bytes: 5145975736034
      tx4_tso_inner_packets: 0
      tx4_tso_inner_bytes: 0
      tx4_csum_partial: 1411271000
      tx4_csum_partial_inner: 0
      tx4_added_vlan_packets: 2882086825
      tx4_nop: 78433610
      tx4_csum_none: 1470815825
      tx4_stopped: 0
      tx4_dropped: 0
      tx4_xmit_more: 28632444
      tx4_recover: 0
      tx4_cqes: 2853456464
      tx4_wake: 0
      tx4_cqe_err: 0
      tx5_packets: 5513864156
      tx5_bytes: 7165864145517
      tx5_tso_packets: 1014046485
      tx5_tso_bytes: 5192635614477
      tx5_tso_inner_packets: 0
      tx5_tso_inner_bytes: 0
      tx5_csum_partial: 1420810473
      tx5_csum_partial_inner: 0
      tx5_added_vlan_packets: 2861370556
      tx5_nop: 78481355
      tx5_csum_none: 1440560083
      tx5_stopped: 0
      tx5_dropped: 0
      tx5_xmit_more: 28222467
      tx5_recover: 0
      tx5_cqes: 2833149758
      tx5_wake: 0
      tx5_cqe_err: 0
      tx6_packets: 5560724761
      tx6_bytes: 7210309972086
      tx6_tso_packets: 994050514
      tx6_tso_bytes: 5171393741595
      tx6_tso_inner_packets: 0
      tx6_tso_inner_bytes: 0
      tx6_csum_partial: 1414303265
      tx6_csum_partial_inner: 0
      tx6_added_vlan_packets: 2905794177
      tx6_nop: 79353318
      tx6_csum_none: 1491490912
      tx6_stopped: 0
      tx6_dropped: 0
      tx6_xmit_more: 31246664
      tx6_recover: 0
      tx6_cqes: 2874549217
      tx6_wake: 0
      tx6_cqe_err: 0
      tx7_packets: 5557594170
      tx7_bytes: 7223138778685
      tx7_tso_packets: 1013475396
      tx7_tso_bytes: 5241530065484
      tx7_tso_inner_packets: 0
      tx7_tso_inner_bytes: 0
      tx7_csum_partial: 1438604314
      tx7_csum_partial_inner: 0
      tx7_added_vlan_packets: 2873917552
      tx7_nop: 79057059
      tx7_csum_none: 1435313239
      tx7_stopped: 0
      tx7_dropped: 0
      tx7_xmit_more: 29258761
      tx7_recover: 0
      tx7_cqes: 2844660578
      tx7_wake: 0
      tx7_cqe_err: 0
      tx8_packets: 5521254733
      tx8_bytes: 7208043146297
      tx8_tso_packets: 1014670801
      tx8_tso_bytes: 5185842447246
      tx8_tso_inner_packets: 0
      tx8_tso_inner_bytes: 0
      tx8_csum_partial: 1431631562
      tx8_csum_partial_inner: 0
      tx8_added_vlan_packets: 2872641129
      tx8_nop: 78545776
      tx8_csum_none: 1441009567
      tx8_stopped: 0
      tx8_dropped: 0
      tx8_xmit_more: 29106291
      tx8_recover: 0
      tx8_cqes: 2843536748
      tx8_wake: 0
      tx8_cqe_err: 0
      tx9_packets: 5528889957
      tx9_bytes: 7191793816058
      tx9_tso_packets: 1015955476
      tx9_tso_bytes: 5207232047828
      tx9_tso_inner_packets: 0
      tx9_tso_inner_bytes: 0
      tx9_csum_partial: 1421266796
      tx9_csum_partial_inner: 0
      tx9_added_vlan_packets: 2869523921
      tx9_nop: 78586218
      tx9_csum_none: 1448257125
      tx9_stopped: 0
      tx9_dropped: 0
      tx9_xmit_more: 29483347
      tx9_recover: 0
      tx9_cqes: 2840042245
      tx9_wake: 0
      tx9_cqe_err: 0
      tx10_packets: 5556351222
      tx10_bytes: 7254798330757
      tx10_tso_packets: 1028554460
      tx10_tso_bytes: 5246179615774
      tx10_tso_inner_packets: 0
      tx10_tso_inner_bytes: 0
      tx10_csum_partial: 1430459021
      tx10_csum_partial_inner: 0
      tx10_added_vlan_packets: 2881683382
      tx10_nop: 79139584
      tx10_csum_none: 1451224361
      tx10_stopped: 0
      tx10_dropped: 0
      tx10_xmit_more: 29217190
      tx10_recover: 0
      tx10_cqes: 2852467898
      tx10_wake: 0
      tx10_cqe_err: 0
      tx11_packets: 5455631854
      tx11_bytes: 7061121713772
      tx11_tso_packets: 992133383
      tx11_tso_bytes: 5089419722682
      tx11_tso_inner_packets: 0
      tx11_tso_inner_bytes: 0
      tx11_csum_partial: 1395542033
      tx11_csum_partial_inner: 0
      tx11_added_vlan_packets: 2852589093
      tx11_nop: 77799857
      tx11_csum_none: 1457047060
      tx11_stopped: 0
      tx11_dropped: 0
      tx11_xmit_more: 29559927
      tx11_recover: 0
      tx11_cqes: 2823031110
      tx11_wake: 0
      tx11_cqe_err: 0
      tx12_packets: 5488286808
      tx12_bytes: 7137087569303
      tx12_tso_packets: 1006435537
      tx12_tso_bytes: 5163371416750
      tx12_tso_inner_packets: 0
      tx12_tso_inner_bytes: 0
      tx12_csum_partial: 1414799411
      tx12_csum_partial_inner: 0
      tx12_added_vlan_packets: 2841679543
      tx12_nop: 78387039
      tx12_csum_none: 1426880132
      tx12_stopped: 0
      tx12_dropped: 0
      tx12_xmit_more: 28607526
      tx12_recover: 0
      tx12_cqes: 2813073557
      tx12_wake: 0
      tx12_cqe_err: 0
      tx13_packets: 5594132290
      tx13_bytes: 7251106284829
      tx13_tso_packets: 1035172061
      tx13_tso_bytes: 5251200286298
      tx13_tso_inner_packets: 0
      tx13_tso_inner_bytes: 0
      tx13_csum_partial: 1443665981
      tx13_csum_partial_inner: 0
      tx13_added_vlan_packets: 2916604799
      tx13_nop: 79670465
      tx13_csum_none: 1472938818
      tx13_stopped: 0
      tx13_dropped: 0
      tx13_xmit_more: 27797067
      tx13_recover: 0
      tx13_cqes: 2888809352
      tx13_wake: 0
      tx13_cqe_err: 0
      tx14_packets: 5548790952
      tx14_bytes: 7194211868411
      tx14_tso_packets: 1021015561
      tx14_tso_bytes: 5231483708869
      tx14_tso_inner_packets: 0
      tx14_tso_inner_bytes: 0
      tx14_csum_partial: 1427711576
      tx14_csum_partial_inner: 0
      tx14_added_vlan_packets: 2875288572
      tx14_nop: 78900224
      tx14_csum_none: 1447576996
      tx14_stopped: 0
      tx14_dropped: 0
      tx14_xmit_more: 30003496
      tx14_recover: 0
      tx14_cqes: 2845286732
      tx14_wake: 0
      tx14_cqe_err: 0
      tx15_packets: 5609310963
      tx15_bytes: 7271380831798
      tx15_tso_packets: 1027830118
      tx15_tso_bytes: 5229697431506
      tx15_tso_inner_packets: 0
      tx15_tso_inner_bytes: 0
      tx15_csum_partial: 1429209941
      tx15_csum_partial_inner: 0
      tx15_added_vlan_packets: 2940315402
      tx15_nop: 79950883
      tx15_csum_none: 1511105462
      tx15_stopped: 0
      tx15_dropped: 0
      tx15_xmit_more: 28820740
      tx15_recover: 0
      tx15_cqes: 2911496633
      tx15_wake: 0
      tx15_cqe_err: 0
      tx16_packets: 4465363036
      tx16_bytes: 5769771803704
      tx16_tso_packets: 817101913
      tx16_tso_bytes: 4180172833814
      tx16_tso_inner_packets: 0
      tx16_tso_inner_bytes: 0
      tx16_csum_partial: 1136731404
      tx16_csum_partial_inner: 0
      tx16_added_vlan_packets: 2332178232
      tx16_nop: 63458573
      tx16_csum_none: 1195446828
      tx16_stopped: 0
      tx16_dropped: 0
      tx16_xmit_more: 23756254
      tx16_recover: 0
      tx16_cqes: 2308423025
      tx16_wake: 0
      tx16_cqe_err: 0
      tx17_packets: 4380386348
      tx17_bytes: 5708702994526
      tx17_tso_packets: 813638023
      tx17_tso_bytes: 4130806014947
      tx17_tso_inner_packets: 0
      tx17_tso_inner_bytes: 0
      tx17_csum_partial: 1133007164
      tx17_csum_partial_inner: 0
      tx17_added_vlan_packets: 2277314787
      tx17_nop: 62377372
      tx17_csum_none: 1144307623
      tx17_stopped: 0
      tx17_dropped: 0
      tx17_xmit_more: 23731361
      tx17_recover: 0
      tx17_cqes: 2253584638
      tx17_wake: 0
      tx17_cqe_err: 0
      tx18_packets: 4450359743
      tx18_bytes: 5758968674820
      tx18_tso_packets: 815791601
      tx18_tso_bytes: 4179942688909
      tx18_tso_inner_packets: 0
      tx18_tso_inner_bytes: 0
      tx18_csum_partial: 1137649257
      tx18_csum_partial_inner: 0
      tx18_added_vlan_packets: 2314556550
      tx18_nop: 63271085
      tx18_csum_none: 1176907293
      tx18_stopped: 0
      tx18_dropped: 0
      tx18_xmit_more: 23055770
      tx18_recover: 0
      tx18_cqes: 2291501928
      tx18_wake: 0
      tx18_cqe_err: 0
      tx19_packets: 4596064378
      tx19_bytes: 5916675706535
      tx19_tso_packets: 825788649
      tx19_tso_bytes: 4208046929921
      tx19_tso_inner_packets: 0
      tx19_tso_inner_bytes: 0
      tx19_csum_partial: 1150666569
      tx19_csum_partial_inner: 0
      tx19_added_vlan_packets: 2450567026
      tx19_nop: 65468504
      tx19_csum_none: 1299900457
      tx19_stopped: 0
      tx19_dropped: 0
      tx19_xmit_more: 23846250
      tx19_recover: 0
      tx19_cqes: 2426722127
      tx19_wake: 0
      tx19_cqe_err: 0
      tx20_packets: 4424935388
      tx20_bytes: 5757631205901
      tx20_tso_packets: 804875006
      tx20_tso_bytes: 4156262736109
      tx20_tso_inner_packets: 0
      tx20_tso_inner_bytes: 0
      tx20_csum_partial: 1134144916
      tx20_csum_partial_inner: 0
      tx20_added_vlan_packets: 2294839665
      tx20_nop: 63023986
      tx20_csum_none: 1160694749
      tx20_stopped: 0
      tx20_dropped: 0
      tx20_xmit_more: 23393201
      tx20_recover: 0
      tx20_cqes: 2271447623
      tx20_wake: 0
      tx20_cqe_err: 0
      tx21_packets: 4595062285
      tx21_bytes: 5958671993467
      tx21_tso_packets: 821936215
      tx21_tso_bytes: 4187977870684
      tx21_tso_inner_packets: 0
      tx21_tso_inner_bytes: 0
      tx21_csum_partial: 1143339787
      tx21_csum_partial_inner: 0
      tx21_added_vlan_packets: 2457167412
      tx21_nop: 65697763
      tx21_csum_none: 1313827625
      tx21_stopped: 0
      tx21_dropped: 0
      tx21_xmit_more: 23858345
      tx21_recover: 0
      tx21_cqes: 2433310348
      tx21_wake: 0
      tx21_cqe_err: 0
      tx22_packets: 4664446513
      tx22_bytes: 5931429292082
      tx22_tso_packets: 814457881
      tx22_tso_bytes: 4148607956533
      tx22_tso_inner_packets: 0
      tx22_tso_inner_bytes: 0
      tx22_csum_partial: 1127284783
      tx22_csum_partial_inner: 0
      tx22_added_vlan_packets: 2548650146
      tx22_nop: 66299909
      tx22_csum_none: 1421365363
      tx22_stopped: 0
      tx22_dropped: 0
      tx22_xmit_more: 23800911
      tx22_recover: 0
      tx22_cqes: 2524850415
      tx22_wake: 0
      tx22_cqe_err: 0
      tx23_packets: 4416221747
      tx23_bytes: 5721472587985
      tx23_tso_packets: 823538520
      tx23_tso_bytes: 4163520218617
      tx23_tso_inner_packets: 0
      tx23_tso_inner_bytes: 0
      tx23_csum_partial: 1135996006
      tx23_csum_partial_inner: 0
      tx23_added_vlan_packets: 2292404120
      tx23_nop: 62709432
      tx23_csum_none: 1156408114
      tx23_stopped: 0
      tx23_dropped: 0
      tx23_xmit_more: 22299889
      tx23_recover: 0
      tx23_cqes: 2270105487
      tx23_wake: 0
      tx23_cqe_err: 0
      tx24_packets: 4420014824
      tx24_bytes: 5740767318521
      tx24_tso_packets: 820838072
      tx24_tso_bytes: 4183722948422
      tx24_tso_inner_packets: 0
      tx24_tso_inner_bytes: 0
      tx24_csum_partial: 1138070059
      tx24_csum_partial_inner: 0
      tx24_added_vlan_packets: 2289043946
      tx24_nop: 62797341
      tx24_csum_none: 1150973887
      tx24_stopped: 0
      tx24_dropped: 0
      tx24_xmit_more: 22744690
      tx24_recover: 0
      tx24_cqes: 2266300568
      tx24_wake: 0
      tx24_cqe_err: 0
      tx25_packets: 4413225545
      tx25_bytes: 5716162617155
      tx25_tso_packets: 808274341
      tx25_tso_bytes: 4138408857714
      tx25_tso_inner_packets: 0
      tx25_tso_inner_bytes: 0
      tx25_csum_partial: 1134587898
      tx25_csum_partial_inner: 0
      tx25_added_vlan_packets: 2297149310
      tx25_nop: 62958238
      tx25_csum_none: 1162561412
      tx25_stopped: 0
      tx25_dropped: 0
      tx25_xmit_more: 24463552
      tx25_recover: 0
      tx25_cqes: 2272686971
      tx25_wake: 0
      tx25_cqe_err: 0
      tx26_packets: 4524907591
      tx26_bytes: 5865394280699
      tx26_tso_packets: 807270022
      tx26_tso_bytes: 4148754705317
      tx26_tso_inner_packets: 0
      tx26_tso_inner_bytes: 0
      tx26_csum_partial: 1130306933
      tx26_csum_partial_inner: 0
      tx26_added_vlan_packets: 2402682460
      tx26_nop: 64474322
      tx26_csum_none: 1272375527
      tx26_stopped: 1
      tx26_dropped: 0
      tx26_xmit_more: 23316186
      tx26_recover: 0
      tx26_cqes: 2379367502
      tx26_wake: 1
      tx26_cqe_err: 0
      tx27_packets: 4376114969
      tx27_bytes: 5683551238304
      tx27_tso_packets: 809344829
      tx27_tso_bytes: 4124331859270
      tx27_tso_inner_packets: 0
      tx27_tso_inner_bytes: 0
      tx27_csum_partial: 1124954937
      tx27_csum_partial_inner: 0
      tx27_added_vlan_packets: 2267871300
      tx27_nop: 62213214
      tx27_csum_none: 1142916363
      tx27_stopped: 0
      tx27_dropped: 0
      tx27_xmit_more: 23369974
      tx27_recover: 0
      tx27_cqes: 2244502686
      tx27_wake: 0
      tx27_cqe_err: 0
      tx28_packets: 3
      tx28_bytes: 266
      tx28_tso_packets: 0
      tx28_tso_bytes: 0
      tx28_tso_inner_packets: 0
      tx28_tso_inner_bytes: 0
      tx28_csum_partial: 0
      tx28_csum_partial_inner: 0
      tx28_added_vlan_packets: 0
      tx28_nop: 0
      tx28_csum_none: 3
      tx28_stopped: 0
      tx28_dropped: 0
      tx28_xmit_more: 0
      tx28_recover: 0
      tx28_cqes: 3
      tx28_wake: 0
      tx28_cqe_err: 0
      tx29_packets: 0
      tx29_bytes: 0
      tx29_tso_packets: 0
      tx29_tso_bytes: 0
      tx29_tso_inner_packets: 0
      tx29_tso_inner_bytes: 0
      tx29_csum_partial: 0
      tx29_csum_partial_inner: 0
      tx29_added_vlan_packets: 0
      tx29_nop: 0
      tx29_csum_none: 0
      tx29_stopped: 0
      tx29_dropped: 0
      tx29_xmit_more: 0
      tx29_recover: 0
      tx29_cqes: 0
      tx29_wake: 0
      tx29_cqe_err: 0
      tx30_packets: 0
      tx30_bytes: 0
      tx30_tso_packets: 0
      tx30_tso_bytes: 0
      tx30_tso_inner_packets: 0
      tx30_tso_inner_bytes: 0
      tx30_csum_partial: 0
      tx30_csum_partial_inner: 0
      tx30_added_vlan_packets: 0
      tx30_nop: 0
      tx30_csum_none: 0
      tx30_stopped: 0
      tx30_dropped: 0
      tx30_xmit_more: 0
      tx30_recover: 0
      tx30_cqes: 0
      tx30_wake: 0
      tx30_cqe_err: 0
      tx31_packets: 0
      tx31_bytes: 0
      tx31_tso_packets: 0
      tx31_tso_bytes: 0
      tx31_tso_inner_packets: 0
      tx31_tso_inner_bytes: 0
      tx31_csum_partial: 0
      tx31_csum_partial_inner: 0
      tx31_added_vlan_packets: 0
      tx31_nop: 0
      tx31_csum_none: 0
      tx31_stopped: 0
      tx31_dropped: 0
      tx31_xmit_more: 0
      tx31_recover: 0
      tx31_cqes: 0
      tx31_wake: 0
      tx31_cqe_err: 0
      tx32_packets: 0
      tx32_bytes: 0
      tx32_tso_packets: 0
      tx32_tso_bytes: 0
      tx32_tso_inner_packets: 0
      tx32_tso_inner_bytes: 0
      tx32_csum_partial: 0
      tx32_csum_partial_inner: 0
      tx32_added_vlan_packets: 0
      tx32_nop: 0
      tx32_csum_none: 0
      tx32_stopped: 0
      tx32_dropped: 0
      tx32_xmit_more: 0
      tx32_recover: 0
      tx32_cqes: 0
      tx32_wake: 0
      tx32_cqe_err: 0
      tx33_packets: 0
      tx33_bytes: 0
      tx33_tso_packets: 0
      tx33_tso_bytes: 0
      tx33_tso_inner_packets: 0
      tx33_tso_inner_bytes: 0
      tx33_csum_partial: 0
      tx33_csum_partial_inner: 0
      tx33_added_vlan_packets: 0
      tx33_nop: 0
      tx33_csum_none: 0
      tx33_stopped: 0
      tx33_dropped: 0
      tx33_xmit_more: 0
      tx33_recover: 0
      tx33_cqes: 0
      tx33_wake: 0
      tx33_cqe_err: 0
      tx34_packets: 0
      tx34_bytes: 0
      tx34_tso_packets: 0
      tx34_tso_bytes: 0
      tx34_tso_inner_packets: 0
      tx34_tso_inner_bytes: 0
      tx34_csum_partial: 0
      tx34_csum_partial_inner: 0
      tx34_added_vlan_packets: 0
      tx34_nop: 0
      tx34_csum_none: 0
      tx34_stopped: 0
      tx34_dropped: 0
      tx34_xmit_more: 0
      tx34_recover: 0
      tx34_cqes: 0
      tx34_wake: 0
      tx34_cqe_err: 0
      tx35_packets: 0
      tx35_bytes: 0
      tx35_tso_packets: 0
      tx35_tso_bytes: 0
      tx35_tso_inner_packets: 0
      tx35_tso_inner_bytes: 0
      tx35_csum_partial: 0
      tx35_csum_partial_inner: 0
      tx35_added_vlan_packets: 0
      tx35_nop: 0
      tx35_csum_none: 0
      tx35_stopped: 0
      tx35_dropped: 0
      tx35_xmit_more: 0
      tx35_recover: 0
      tx35_cqes: 0
      tx35_wake: 0
      tx35_cqe_err: 0
      tx36_packets: 0
      tx36_bytes: 0
      tx36_tso_packets: 0
      tx36_tso_bytes: 0
      tx36_tso_inner_packets: 0
      tx36_tso_inner_bytes: 0
      tx36_csum_partial: 0
      tx36_csum_partial_inner: 0
      tx36_added_vlan_packets: 0
      tx36_nop: 0
      tx36_csum_none: 0
      tx36_stopped: 0
      tx36_dropped: 0
      tx36_xmit_more: 0
      tx36_recover: 0
      tx36_cqes: 0
      tx36_wake: 0
      tx36_cqe_err: 0
      tx37_packets: 0
      tx37_bytes: 0
      tx37_tso_packets: 0
      tx37_tso_bytes: 0
      tx37_tso_inner_packets: 0
      tx37_tso_inner_bytes: 0
      tx37_csum_partial: 0
      tx37_csum_partial_inner: 0
      tx37_added_vlan_packets: 0
      tx37_nop: 0
      tx37_csum_none: 0
      tx37_stopped: 0
      tx37_dropped: 0
      tx37_xmit_more: 0
      tx37_recover: 0
      tx37_cqes: 0
      tx37_wake: 0
      tx37_cqe_err: 0
      tx38_packets: 0
      tx38_bytes: 0
      tx38_tso_packets: 0
      tx38_tso_bytes: 0
      tx38_tso_inner_packets: 0
      tx38_tso_inner_bytes: 0
      tx38_csum_partial: 0
      tx38_csum_partial_inner: 0
      tx38_added_vlan_packets: 0
      tx38_nop: 0
      tx38_csum_none: 0
      tx38_stopped: 0
      tx38_dropped: 0
      tx38_xmit_more: 0
      tx38_recover: 0
      tx38_cqes: 0
      tx38_wake: 0
      tx38_cqe_err: 0
      tx39_packets: 0
      tx39_bytes: 0
      tx39_tso_packets: 0
      tx39_tso_bytes: 0
      tx39_tso_inner_packets: 0
      tx39_tso_inner_bytes: 0
      tx39_csum_partial: 0
      tx39_csum_partial_inner: 0
      tx39_added_vlan_packets: 0
      tx39_nop: 0
      tx39_csum_none: 0
      tx39_stopped: 0
      tx39_dropped: 0
      tx39_xmit_more: 0
      tx39_recover: 0
      tx39_cqes: 0
      tx39_wake: 0
      tx39_cqe_err: 0
      tx40_packets: 0
      tx40_bytes: 0
      tx40_tso_packets: 0
      tx40_tso_bytes: 0
      tx40_tso_inner_packets: 0
      tx40_tso_inner_bytes: 0
      tx40_csum_partial: 0
      tx40_csum_partial_inner: 0
      tx40_added_vlan_packets: 0
      tx40_nop: 0
      tx40_csum_none: 0
      tx40_stopped: 0
      tx40_dropped: 0
      tx40_xmit_more: 0
      tx40_recover: 0
      tx40_cqes: 0
      tx40_wake: 0
      tx40_cqe_err: 0
      tx41_packets: 0
      tx41_bytes: 0
      tx41_tso_packets: 0
      tx41_tso_bytes: 0
      tx41_tso_inner_packets: 0
      tx41_tso_inner_bytes: 0
      tx41_csum_partial: 0
      tx41_csum_partial_inner: 0
      tx41_added_vlan_packets: 0
      tx41_nop: 0
      tx41_csum_none: 0
      tx41_stopped: 0
      tx41_dropped: 0
      tx41_xmit_more: 0
      tx41_recover: 0
      tx41_cqes: 0
      tx41_wake: 0
      tx41_cqe_err: 0
      tx42_packets: 0
      tx42_bytes: 0
      tx42_tso_packets: 0
      tx42_tso_bytes: 0
      tx42_tso_inner_packets: 0
      tx42_tso_inner_bytes: 0
      tx42_csum_partial: 0
      tx42_csum_partial_inner: 0
      tx42_added_vlan_packets: 0
      tx42_nop: 0
      tx42_csum_none: 0
      tx42_stopped: 0
      tx42_dropped: 0
      tx42_xmit_more: 0
      tx42_recover: 0
      tx42_cqes: 0
      tx42_wake: 0
      tx42_cqe_err: 0
      tx43_packets: 0
      tx43_bytes: 0
      tx43_tso_packets: 0
      tx43_tso_bytes: 0
      tx43_tso_inner_packets: 0
      tx43_tso_inner_bytes: 0
      tx43_csum_partial: 0
      tx43_csum_partial_inner: 0
      tx43_added_vlan_packets: 0
      tx43_nop: 0
      tx43_csum_none: 0
      tx43_stopped: 0
      tx43_dropped: 0
      tx43_xmit_more: 0
      tx43_recover: 0
      tx43_cqes: 0
      tx43_wake: 0
      tx43_cqe_err: 0
      tx44_packets: 0
      tx44_bytes: 0
      tx44_tso_packets: 0
      tx44_tso_bytes: 0
      tx44_tso_inner_packets: 0
      tx44_tso_inner_bytes: 0
      tx44_csum_partial: 0
      tx44_csum_partial_inner: 0
      tx44_added_vlan_packets: 0
      tx44_nop: 0
      tx44_csum_none: 0
      tx44_stopped: 0
      tx44_dropped: 0
      tx44_xmit_more: 0
      tx44_recover: 0
      tx44_cqes: 0
      tx44_wake: 0
      tx44_cqe_err: 0
      tx45_packets: 0
      tx45_bytes: 0
      tx45_tso_packets: 0
      tx45_tso_bytes: 0
      tx45_tso_inner_packets: 0
      tx45_tso_inner_bytes: 0
      tx45_csum_partial: 0
      tx45_csum_partial_inner: 0
      tx45_added_vlan_packets: 0
      tx45_nop: 0
      tx45_csum_none: 0
      tx45_stopped: 0
      tx45_dropped: 0
      tx45_xmit_more: 0
      tx45_recover: 0
      tx45_cqes: 0
      tx45_wake: 0
      tx45_cqe_err: 0
      tx46_packets: 0
      tx46_bytes: 0
      tx46_tso_packets: 0
      tx46_tso_bytes: 0
      tx46_tso_inner_packets: 0
      tx46_tso_inner_bytes: 0
      tx46_csum_partial: 0
      tx46_csum_partial_inner: 0
      tx46_added_vlan_packets: 0
      tx46_nop: 0
      tx46_csum_none: 0
      tx46_stopped: 0
      tx46_dropped: 0
      tx46_xmit_more: 0
      tx46_recover: 0
      tx46_cqes: 0
      tx46_wake: 0
      tx46_cqe_err: 0
      tx47_packets: 0
      tx47_bytes: 0
      tx47_tso_packets: 0
      tx47_tso_bytes: 0
      tx47_tso_inner_packets: 0
      tx47_tso_inner_bytes: 0
      tx47_csum_partial: 0
      tx47_csum_partial_inner: 0
      tx47_added_vlan_packets: 0
      tx47_nop: 0
      tx47_csum_none: 0
      tx47_stopped: 0
      tx47_dropped: 0
      tx47_xmit_more: 0
      tx47_recover: 0
      tx47_cqes: 0
      tx47_wake: 0
      tx47_cqe_err: 0
      tx48_packets: 0
      tx48_bytes: 0
      tx48_tso_packets: 0
      tx48_tso_bytes: 0
      tx48_tso_inner_packets: 0
      tx48_tso_inner_bytes: 0
      tx48_csum_partial: 0
      tx48_csum_partial_inner: 0
      tx48_added_vlan_packets: 0
      tx48_nop: 0
      tx48_csum_none: 0
      tx48_stopped: 0
      tx48_dropped: 0
      tx48_xmit_more: 0
      tx48_recover: 0
      tx48_cqes: 0
      tx48_wake: 0
      tx48_cqe_err: 0
      tx49_packets: 0
      tx49_bytes: 0
      tx49_tso_packets: 0
      tx49_tso_bytes: 0
      tx49_tso_inner_packets: 0
      tx49_tso_inner_bytes: 0
      tx49_csum_partial: 0
      tx49_csum_partial_inner: 0
      tx49_added_vlan_packets: 0
      tx49_nop: 0
      tx49_csum_none: 0
      tx49_stopped: 0
      tx49_dropped: 0
      tx49_xmit_more: 0
      tx49_recover: 0
      tx49_cqes: 0
      tx49_wake: 0
      tx49_cqe_err: 0
      tx50_packets: 0
      tx50_bytes: 0
      tx50_tso_packets: 0
      tx50_tso_bytes: 0
      tx50_tso_inner_packets: 0
      tx50_tso_inner_bytes: 0
      tx50_csum_partial: 0
      tx50_csum_partial_inner: 0
      tx50_added_vlan_packets: 0
      tx50_nop: 0
      tx50_csum_none: 0
      tx50_stopped: 0
      tx50_dropped: 0
      tx50_xmit_more: 0
      tx50_recover: 0
      tx50_cqes: 0
      tx50_wake: 0
      tx50_cqe_err: 0
      tx51_packets: 0
      tx51_bytes: 0
      tx51_tso_packets: 0
      tx51_tso_bytes: 0
      tx51_tso_inner_packets: 0
      tx51_tso_inner_bytes: 0
      tx51_csum_partial: 0
      tx51_csum_partial_inner: 0
      tx51_added_vlan_packets: 0
      tx51_nop: 0
      tx51_csum_none: 0
      tx51_stopped: 0
      tx51_dropped: 0
      tx51_xmit_more: 0
      tx51_recover: 0
      tx51_cqes: 0
      tx51_wake: 0
      tx51_cqe_err: 0
      tx52_packets: 0
      tx52_bytes: 0
      tx52_tso_packets: 0
      tx52_tso_bytes: 0
      tx52_tso_inner_packets: 0
      tx52_tso_inner_bytes: 0
      tx52_csum_partial: 0
      tx52_csum_partial_inner: 0
      tx52_added_vlan_packets: 0
      tx52_nop: 0
      tx52_csum_none: 0
      tx52_stopped: 0
      tx52_dropped: 0
      tx52_xmit_more: 0
      tx52_recover: 0
      tx52_cqes: 0
      tx52_wake: 0
      tx52_cqe_err: 0
      tx53_packets: 0
      tx53_bytes: 0
      tx53_tso_packets: 0
      tx53_tso_bytes: 0
      tx53_tso_inner_packets: 0
      tx53_tso_inner_bytes: 0
      tx53_csum_partial: 0
      tx53_csum_partial_inner: 0
      tx53_added_vlan_packets: 0
      tx53_nop: 0
      tx53_csum_none: 0
      tx53_stopped: 0
      tx53_dropped: 0
      tx53_xmit_more: 0
      tx53_recover: 0
      tx53_cqes: 0
      tx53_wake: 0
      tx53_cqe_err: 0
      tx54_packets: 0
      tx54_bytes: 0
      tx54_tso_packets: 0
      tx54_tso_bytes: 0
      tx54_tso_inner_packets: 0
      tx54_tso_inner_bytes: 0
      tx54_csum_partial: 0
      tx54_csum_partial_inner: 0
      tx54_added_vlan_packets: 0
      tx54_nop: 0
      tx54_csum_none: 0
      tx54_stopped: 0
      tx54_dropped: 0
      tx54_xmit_more: 0
      tx54_recover: 0
      tx54_cqes: 0
      tx54_wake: 0
      tx54_cqe_err: 0
      tx55_packets: 0
      tx55_bytes: 0
      tx55_tso_packets: 0
      tx55_tso_bytes: 0
      tx55_tso_inner_packets: 0
      tx55_tso_inner_bytes: 0
      tx55_csum_partial: 0
      tx55_csum_partial_inner: 0
      tx55_added_vlan_packets: 0
      tx55_nop: 0
      tx55_csum_none: 0
      tx55_stopped: 0
      tx55_dropped: 0
      tx55_xmit_more: 0
      tx55_recover: 0
      tx55_cqes: 0
      tx55_wake: 0
      tx55_cqe_err: 0
      tx0_xdp_xmit: 0
      tx0_xdp_full: 0
      tx0_xdp_err: 0
      tx0_xdp_cqes: 0
      tx1_xdp_xmit: 0
      tx1_xdp_full: 0
      tx1_xdp_err: 0
      tx1_xdp_cqes: 0
      tx2_xdp_xmit: 0
      tx2_xdp_full: 0
      tx2_xdp_err: 0
      tx2_xdp_cqes: 0
      tx3_xdp_xmit: 0
      tx3_xdp_full: 0
      tx3_xdp_err: 0
      tx3_xdp_cqes: 0
      tx4_xdp_xmit: 0
      tx4_xdp_full: 0
      tx4_xdp_err: 0
      tx4_xdp_cqes: 0
      tx5_xdp_xmit: 0
      tx5_xdp_full: 0
      tx5_xdp_err: 0
      tx5_xdp_cqes: 0
      tx6_xdp_xmit: 0
      tx6_xdp_full: 0
      tx6_xdp_err: 0
      tx6_xdp_cqes: 0
      tx7_xdp_xmit: 0
      tx7_xdp_full: 0
      tx7_xdp_err: 0
      tx7_xdp_cqes: 0
      tx8_xdp_xmit: 0
      tx8_xdp_full: 0
      tx8_xdp_err: 0
      tx8_xdp_cqes: 0
      tx9_xdp_xmit: 0
      tx9_xdp_full: 0
      tx9_xdp_err: 0
      tx9_xdp_cqes: 0
      tx10_xdp_xmit: 0
      tx10_xdp_full: 0
      tx10_xdp_err: 0
      tx10_xdp_cqes: 0
      tx11_xdp_xmit: 0
      tx11_xdp_full: 0
      tx11_xdp_err: 0
      tx11_xdp_cqes: 0
      tx12_xdp_xmit: 0
      tx12_xdp_full: 0
      tx12_xdp_err: 0
      tx12_xdp_cqes: 0
      tx13_xdp_xmit: 0
      tx13_xdp_full: 0
      tx13_xdp_err: 0
      tx13_xdp_cqes: 0
      tx14_xdp_xmit: 0
      tx14_xdp_full: 0
      tx14_xdp_err: 0
      tx14_xdp_cqes: 0
      tx15_xdp_xmit: 0
      tx15_xdp_full: 0
      tx15_xdp_err: 0
      tx15_xdp_cqes: 0
      tx16_xdp_xmit: 0
      tx16_xdp_full: 0
      tx16_xdp_err: 0
      tx16_xdp_cqes: 0
      tx17_xdp_xmit: 0
      tx17_xdp_full: 0
      tx17_xdp_err: 0
      tx17_xdp_cqes: 0
      tx18_xdp_xmit: 0
      tx18_xdp_full: 0
      tx18_xdp_err: 0
      tx18_xdp_cqes: 0
      tx19_xdp_xmit: 0
      tx19_xdp_full: 0
      tx19_xdp_err: 0
      tx19_xdp_cqes: 0
      tx20_xdp_xmit: 0
      tx20_xdp_full: 0
      tx20_xdp_err: 0
      tx20_xdp_cqes: 0
      tx21_xdp_xmit: 0
      tx21_xdp_full: 0
      tx21_xdp_err: 0
      tx21_xdp_cqes: 0
      tx22_xdp_xmit: 0
      tx22_xdp_full: 0
      tx22_xdp_err: 0
      tx22_xdp_cqes: 0
      tx23_xdp_xmit: 0
      tx23_xdp_full: 0
      tx23_xdp_err: 0
      tx23_xdp_cqes: 0
      tx24_xdp_xmit: 0
      tx24_xdp_full: 0
      tx24_xdp_err: 0
      tx24_xdp_cqes: 0
      tx25_xdp_xmit: 0
      tx25_xdp_full: 0
      tx25_xdp_err: 0
      tx25_xdp_cqes: 0
      tx26_xdp_xmit: 0
      tx26_xdp_full: 0
      tx26_xdp_err: 0
      tx26_xdp_cqes: 0
      tx27_xdp_xmit: 0
      tx27_xdp_full: 0
      tx27_xdp_err: 0
      tx27_xdp_cqes: 0
      tx28_xdp_xmit: 0
      tx28_xdp_full: 0
      tx28_xdp_err: 0
      tx28_xdp_cqes: 0
      tx29_xdp_xmit: 0
      tx29_xdp_full: 0
      tx29_xdp_err: 0
      tx29_xdp_cqes: 0
      tx30_xdp_xmit: 0
      tx30_xdp_full: 0
      tx30_xdp_err: 0
      tx30_xdp_cqes: 0
      tx31_xdp_xmit: 0
      tx31_xdp_full: 0
      tx31_xdp_err: 0
      tx31_xdp_cqes: 0
      tx32_xdp_xmit: 0
      tx32_xdp_full: 0
      tx32_xdp_err: 0
      tx32_xdp_cqes: 0
      tx33_xdp_xmit: 0
      tx33_xdp_full: 0
      tx33_xdp_err: 0
      tx33_xdp_cqes: 0
      tx34_xdp_xmit: 0
      tx34_xdp_full: 0
      tx34_xdp_err: 0
      tx34_xdp_cqes: 0
      tx35_xdp_xmit: 0
      tx35_xdp_full: 0
      tx35_xdp_err: 0
      tx35_xdp_cqes: 0
      tx36_xdp_xmit: 0
      tx36_xdp_full: 0
      tx36_xdp_err: 0
      tx36_xdp_cqes: 0
      tx37_xdp_xmit: 0
      tx37_xdp_full: 0
      tx37_xdp_err: 0
      tx37_xdp_cqes: 0
      tx38_xdp_xmit: 0
      tx38_xdp_full: 0
      tx38_xdp_err: 0
      tx38_xdp_cqes: 0
      tx39_xdp_xmit: 0
      tx39_xdp_full: 0
      tx39_xdp_err: 0
      tx39_xdp_cqes: 0
      tx40_xdp_xmit: 0
      tx40_xdp_full: 0
      tx40_xdp_err: 0
      tx40_xdp_cqes: 0
      tx41_xdp_xmit: 0
      tx41_xdp_full: 0
      tx41_xdp_err: 0
      tx41_xdp_cqes: 0
      tx42_xdp_xmit: 0
      tx42_xdp_full: 0
      tx42_xdp_err: 0
      tx42_xdp_cqes: 0
      tx43_xdp_xmit: 0
      tx43_xdp_full: 0
      tx43_xdp_err: 0
      tx43_xdp_cqes: 0
      tx44_xdp_xmit: 0
      tx44_xdp_full: 0
      tx44_xdp_err: 0
      tx44_xdp_cqes: 0
      tx45_xdp_xmit: 0
      tx45_xdp_full: 0
      tx45_xdp_err: 0
      tx45_xdp_cqes: 0
      tx46_xdp_xmit: 0
      tx46_xdp_full: 0
      tx46_xdp_err: 0
      tx46_xdp_cqes: 0
      tx47_xdp_xmit: 0
      tx47_xdp_full: 0
      tx47_xdp_err: 0
      tx47_xdp_cqes: 0
      tx48_xdp_xmit: 0
      tx48_xdp_full: 0
      tx48_xdp_err: 0
      tx48_xdp_cqes: 0
      tx49_xdp_xmit: 0
      tx49_xdp_full: 0
      tx49_xdp_err: 0
      tx49_xdp_cqes: 0
      tx50_xdp_xmit: 0
      tx50_xdp_full: 0
      tx50_xdp_err: 0
      tx50_xdp_cqes: 0
      tx51_xdp_xmit: 0
      tx51_xdp_full: 0
      tx51_xdp_err: 0
      tx51_xdp_cqes: 0
      tx52_xdp_xmit: 0
      tx52_xdp_full: 0
      tx52_xdp_err: 0
      tx52_xdp_cqes: 0
      tx53_xdp_xmit: 0
      tx53_xdp_full: 0
      tx53_xdp_err: 0
      tx53_xdp_cqes: 0
      tx54_xdp_xmit: 0
      tx54_xdp_full: 0
      tx54_xdp_err: 0
      tx54_xdp_cqes: 0
      tx55_xdp_xmit: 0
      tx55_xdp_full: 0
      tx55_xdp_err: 0
      tx55_xdp_cqes: 0

ethtool -S enp175s0f0
NIC statistics:
      rx_packets: 141574897253
      rx_bytes: 184445040406258
      tx_packets: 172569543894
      tx_bytes: 99486882076365
      tx_tso_packets: 9367664195
      tx_tso_bytes: 56435233992948
      tx_tso_inner_packets: 0
      tx_tso_inner_bytes: 0
      tx_added_vlan_packets: 141297671626
      tx_nop: 2102916272
      rx_lro_packets: 0
      rx_lro_bytes: 0
      rx_ecn_mark: 0
      rx_removed_vlan_packets: 141574897252
      rx_csum_unnecessary: 0
      rx_csum_none: 23135854
      rx_csum_complete: 141551761398
      rx_csum_unnecessary_inner: 0
      rx_xdp_drop: 0
      rx_xdp_redirect: 0
      rx_xdp_tx_xmit: 0
      rx_xdp_tx_full: 0
      rx_xdp_tx_err: 0
      rx_xdp_tx_cqe: 0
      tx_csum_none: 127934791664
      tx_csum_partial: 13362879974
      tx_csum_partial_inner: 0
      tx_queue_stopped: 232561
      tx_queue_dropped: 0
      tx_xmit_more: 1266021946
      tx_recover: 0
      tx_cqes: 140031716469
      tx_queue_wake: 232561
      tx_udp_seg_rem: 0
      tx_cqe_err: 0
      tx_xdp_xmit: 0
      tx_xdp_full: 0
      tx_xdp_err: 0
      tx_xdp_cqes: 0
      rx_wqe_err: 0
      rx_mpwqe_filler_cqes: 0
      rx_mpwqe_filler_strides: 0
      rx_buff_alloc_err: 0
      rx_cqe_compress_blks: 0
      rx_cqe_compress_pkts: 0
      rx_page_reuse: 0
      rx_cache_reuse: 16625975793
      rx_cache_full: 54161465914
      rx_cache_empty: 258048
      rx_cache_busy: 54161472735
      rx_cache_waive: 0
      rx_congst_umr: 0
      rx_arfs_err: 0
      ch_events: 40572621887
      ch_poll: 40885650979
      ch_arm: 40429276692
      ch_aff_change: 0
      ch_eq_rearm: 0
      rx_out_of_buffer: 2791690
      rx_if_down_packets: 74
      rx_vport_unicast_packets: 141843476308
      rx_vport_unicast_bytes: 185421265403318
      tx_vport_unicast_packets: 172569484005
      tx_vport_unicast_bytes: 100019940094298
      rx_vport_multicast_packets: 85122935
      rx_vport_multicast_bytes: 5761316431
      tx_vport_multicast_packets: 6452
      tx_vport_multicast_bytes: 643540
      rx_vport_broadcast_packets: 22423624
      rx_vport_broadcast_bytes: 1390127090
      tx_vport_broadcast_packets: 22024
      tx_vport_broadcast_bytes: 1321440
      rx_vport_rdma_unicast_packets: 0
      rx_vport_rdma_unicast_bytes: 0
      tx_vport_rdma_unicast_packets: 0
      tx_vport_rdma_unicast_bytes: 0
      rx_vport_rdma_multicast_packets: 0
      rx_vport_rdma_multicast_bytes: 0
      tx_vport_rdma_multicast_packets: 0
      tx_vport_rdma_multicast_bytes: 0
      tx_packets_phy: 172569501577
      rx_packets_phy: 142871314588
      rx_crc_errors_phy: 0
      tx_bytes_phy: 100710212814151
      rx_bytes_phy: 187209224289564
      tx_multicast_phy: 6452
      tx_broadcast_phy: 22024
      rx_multicast_phy: 85122933
      rx_broadcast_phy: 22423623
      rx_in_range_len_errors_phy: 2
      rx_out_of_range_len_phy: 0
      rx_oversize_pkts_phy: 0
      rx_symbol_err_phy: 0
      tx_mac_control_phy: 0
      rx_mac_control_phy: 0
      rx_unsupported_op_phy: 0
      rx_pause_ctrl_phy: 0
      tx_pause_ctrl_phy: 0
      rx_discards_phy: 920161423
      tx_discards_phy: 0
      tx_errors_phy: 0
      rx_undersize_pkts_phy: 0
      rx_fragments_phy: 0
      rx_jabbers_phy: 0
      rx_64_bytes_phy: 412006326
      rx_65_to_127_bytes_phy: 11934371453
      rx_128_to_255_bytes_phy: 3415281165
      rx_256_to_511_bytes_phy: 2072955511
      rx_512_to_1023_bytes_phy: 2415393005
      rx_1024_to_1518_bytes_phy: 72182391608
      rx_1519_to_2047_bytes_phy: 50438902587
      rx_2048_to_4095_bytes_phy: 0
      rx_4096_to_8191_bytes_phy: 0
      rx_8192_to_10239_bytes_phy: 0
      link_down_events_phy: 0
      rx_pcs_symbol_err_phy: 0
      rx_corrected_bits_phy: 0
      rx_pci_signal_integrity: 0
      tx_pci_signal_integrity: 48
      rx_prio0_bytes: 186709842592642
      rx_prio0_packets: 141481966007
      tx_prio0_bytes: 100710171118138
      tx_prio0_packets: 172569437949
      rx_prio1_bytes: 492288152326
      rx_prio1_packets: 385996045
      tx_prio1_bytes: 0
      tx_prio1_packets: 0
      rx_prio2_bytes: 22119952
      rx_prio2_packets: 70788
      tx_prio2_bytes: 0
      tx_prio2_packets: 0
      rx_prio3_bytes: 546141102
      rx_prio3_packets: 681608
      tx_prio3_bytes: 0
      tx_prio3_packets: 0
      rx_prio4_bytes: 14665067
      rx_prio4_packets: 29486
      tx_prio4_bytes: 0
      tx_prio4_packets: 0
      rx_prio5_bytes: 158862504
      rx_prio5_packets: 965307
      tx_prio5_bytes: 0
      tx_prio5_packets: 0
      rx_prio6_bytes: 669337783
      rx_prio6_packets: 1475775
      tx_prio6_bytes: 0
      tx_prio6_packets: 0
      rx_prio7_bytes: 5623481349
      rx_prio7_packets: 79926412
      tx_prio7_bytes: 0
      tx_prio7_packets: 0
      module_unplug: 0
      module_bus_stuck: 0
      module_high_temp: 0
      module_bad_shorted: 0
      ch0_events: 1446162630
      ch0_poll: 1463312972
      ch0_arm: 1440728278
      ch0_aff_change: 0
      ch0_eq_rearm: 0
      ch1_events: 1384301405
      ch1_poll: 1399210915
      ch1_arm: 1378636486
      ch1_aff_change: 0
      ch1_eq_rearm: 0
      ch2_events: 1382788887
      ch2_poll: 1397231470
      ch2_arm: 1377058116
      ch2_aff_change: 0
      ch2_eq_rearm: 0
      ch3_events: 1461956995
      ch3_poll: 1475553146
      ch3_arm: 1456571625
      ch3_aff_change: 0
      ch3_eq_rearm: 0
      ch4_events: 1497359109
      ch4_poll: 1511021037
      ch4_arm: 1491733757
      ch4_aff_change: 0
      ch4_eq_rearm: 0
      ch5_events: 1387736262
      ch5_poll: 1400964615
      ch5_arm: 1382382834
      ch5_aff_change: 0
      ch5_eq_rearm: 0
      ch6_events: 1376772405
      ch6_poll: 1390851449
      ch6_arm: 1371551764
      ch6_aff_change: 0
      ch6_eq_rearm: 0
      ch7_events: 1431271514
      ch7_poll: 1445049729
      ch7_arm: 1425753718
      ch7_aff_change: 0
      ch7_eq_rearm: 0
      ch8_events: 1426976374
      ch8_poll: 1439938692
      ch8_arm: 1421392984
      ch8_aff_change: 0
      ch8_eq_rearm: 0
      ch9_events: 1456160031
      ch9_poll: 1468922870
      ch9_arm: 1450930446
      ch9_aff_change: 0
      ch9_eq_rearm: 0
      ch10_events: 1443640165
      ch10_poll: 1456812203
      ch10_arm: 1438425101
      ch10_aff_change: 0
      ch10_eq_rearm: 0
      ch11_events: 1381104776
      ch11_poll: 1393811057
      ch11_arm: 1376059326
      ch11_aff_change: 0
      ch11_eq_rearm: 0
      ch12_events: 1365223276
      ch12_poll: 1378406059
      ch12_arm: 1359950494
      ch12_aff_change: 0
      ch12_eq_rearm: 0
      ch13_events: 1421622259
      ch13_poll: 1434670996
      ch13_arm: 1416241801
      ch13_aff_change: 0
      ch13_eq_rearm: 0
      ch14_events: 1379084590
      ch14_poll: 1392425015
      ch14_arm: 1373675179
      ch14_aff_change: 0
      ch14_eq_rearm: 0
      ch15_events: 1531217338
      ch15_poll: 1543353833
      ch15_arm: 1526350453
      ch15_aff_change: 0
      ch15_eq_rearm: 0
      ch16_events: 1460469776
      ch16_poll: 1467995928
      ch16_arm: 1456010194
      ch16_aff_change: 0
      ch16_eq_rearm: 0
      ch17_events: 1494067670
      ch17_poll: 1500856680
      ch17_arm: 1489232674
      ch17_aff_change: 0
      ch17_eq_rearm: 0
      ch18_events: 1530126866
      ch18_poll: 1537293620
      ch18_arm: 1525476123
      ch18_aff_change: 0
      ch18_eq_rearm: 0
      ch19_events: 1499526149
      ch19_poll: 1506789309
      ch19_arm: 1495161602
      ch19_aff_change: 0
      ch19_eq_rearm: 0
      ch20_events: 1451479763
      ch20_poll: 1459767921
      ch20_arm: 1446360801
      ch20_aff_change: 0
      ch20_eq_rearm: 0
      ch21_events: 1521413613
      ch21_poll: 1529345146
      ch21_arm: 1517229314
      ch21_aff_change: 0
      ch21_eq_rearm: 0
      ch22_events: 1471950045
      ch22_poll: 1479746764
      ch22_arm: 1467681629
      ch22_aff_change: 0
      ch22_eq_rearm: 0
      ch23_events: 1502968393
      ch23_poll: 1510419909
      ch23_arm: 1498168438
      ch23_aff_change: 0
      ch23_eq_rearm: 0
      ch24_events: 1473451639
      ch24_poll: 1482606899
      ch24_arm: 1468212489
      ch24_aff_change: 0
      ch24_eq_rearm: 0
      ch25_events: 1440399182
      ch25_poll: 1448897475
      ch25_arm: 1435044786
      ch25_aff_change: 0
      ch25_eq_rearm: 0
      ch26_events: 1436831565
      ch26_poll: 1445485731
      ch26_arm: 1431827527
      ch26_aff_change: 0
      ch26_eq_rearm: 0
      ch27_events: 1516560621
      ch27_poll: 1524911010
      ch27_arm: 1511430164
      ch27_aff_change: 0
      ch27_eq_rearm: 0
      ch28_events: 4
      ch28_poll: 4
      ch28_arm: 4
      ch28_aff_change: 0
      ch28_eq_rearm: 0
      ch29_events: 6
      ch29_poll: 6
      ch29_arm: 6
      ch29_aff_change: 0
      ch29_eq_rearm: 0
      ch30_events: 4
      ch30_poll: 4
      ch30_arm: 4
      ch30_aff_change: 0
      ch30_eq_rearm: 0
      ch31_events: 4
      ch31_poll: 4
      ch31_arm: 4
      ch31_aff_change: 0
      ch31_eq_rearm: 0
      ch32_events: 4
      ch32_poll: 4
      ch32_arm: 4
      ch32_aff_change: 0
      ch32_eq_rearm: 0
      ch33_events: 4
      ch33_poll: 4
      ch33_arm: 4
      ch33_aff_change: 0
      ch33_eq_rearm: 0
      ch34_events: 4
      ch34_poll: 4
      ch34_arm: 4
      ch34_aff_change: 0
      ch34_eq_rearm: 0
      ch35_events: 4
      ch35_poll: 4
      ch35_arm: 4
      ch35_aff_change: 0
      ch35_eq_rearm: 0
      ch36_events: 4
      ch36_poll: 4
      ch36_arm: 4
      ch36_aff_change: 0
      ch36_eq_rearm: 0
      ch37_events: 4
      ch37_poll: 4
      ch37_arm: 4
      ch37_aff_change: 0
      ch37_eq_rearm: 0
      ch38_events: 4
      ch38_poll: 4
      ch38_arm: 4
      ch38_aff_change: 0
      ch38_eq_rearm: 0
      ch39_events: 4
      ch39_poll: 4
      ch39_arm: 4
      ch39_aff_change: 0
      ch39_eq_rearm: 0
      ch40_events: 4
      ch40_poll: 4
      ch40_arm: 4
      ch40_aff_change: 0
      ch40_eq_rearm: 0
      ch41_events: 4
      ch41_poll: 4
      ch41_arm: 4
      ch41_aff_change: 0
      ch41_eq_rearm: 0
      ch42_events: 4
      ch42_poll: 4
      ch42_arm: 4
      ch42_aff_change: 0
      ch42_eq_rearm: 0
      ch43_events: 4
      ch43_poll: 4
      ch43_arm: 4
      ch43_aff_change: 0
      ch43_eq_rearm: 0
      ch44_events: 4
      ch44_poll: 4
      ch44_arm: 4
      ch44_aff_change: 0
      ch44_eq_rearm: 0
      ch45_events: 4
      ch45_poll: 4
      ch45_arm: 4
      ch45_aff_change: 0
      ch45_eq_rearm: 0
      ch46_events: 4
      ch46_poll: 4
      ch46_arm: 4
      ch46_aff_change: 0
      ch46_eq_rearm: 0
      ch47_events: 4
      ch47_poll: 4
      ch47_arm: 4
      ch47_aff_change: 0
      ch47_eq_rearm: 0
      ch48_events: 4
      ch48_poll: 4
      ch48_arm: 4
      ch48_aff_change: 0
      ch48_eq_rearm: 0
      ch49_events: 4
      ch49_poll: 4
      ch49_arm: 4
      ch49_aff_change: 0
      ch49_eq_rearm: 0
      ch50_events: 4
      ch50_poll: 4
      ch50_arm: 4
      ch50_aff_change: 0
      ch50_eq_rearm: 0
      ch51_events: 4
      ch51_poll: 4
      ch51_arm: 4
      ch51_aff_change: 0
      ch51_eq_rearm: 0
      ch52_events: 4
      ch52_poll: 4
      ch52_arm: 4
      ch52_aff_change: 0
      ch52_eq_rearm: 0
      ch53_events: 4
      ch53_poll: 4
      ch53_arm: 4
      ch53_aff_change: 0
      ch53_eq_rearm: 0
      ch54_events: 4
      ch54_poll: 4
      ch54_arm: 4
      ch54_aff_change: 0
      ch54_eq_rearm: 0
      ch55_events: 4
      ch55_poll: 4
      ch55_arm: 4
      ch55_aff_change: 0
      ch55_eq_rearm: 0
      rx0_packets: 5861448653
      rx0_bytes: 7389128595728
      rx0_csum_complete: 5838312798
      rx0_csum_unnecessary: 0
      rx0_csum_unnecessary_inner: 0
      rx0_csum_none: 23135855
      rx0_xdp_drop: 0
      rx0_xdp_redirect: 0
      rx0_lro_packets: 0
      rx0_lro_bytes: 0
      rx0_ecn_mark: 0
      rx0_removed_vlan_packets: 5861448653
      rx0_wqe_err: 0
      rx0_mpwqe_filler_cqes: 0
      rx0_mpwqe_filler_strides: 0
      rx0_buff_alloc_err: 0
      rx0_cqe_compress_blks: 0
      rx0_cqe_compress_pkts: 0
      rx0_page_reuse: 0
      rx0_cache_reuse: 2559
      rx0_cache_full: 2930721512
      rx0_cache_empty: 6656
      rx0_cache_busy: 2930721765
      rx0_cache_waive: 0
      rx0_congst_umr: 0
      rx0_arfs_err: 0
      rx0_xdp_tx_xmit: 0
      rx0_xdp_tx_full: 0
      rx0_xdp_tx_err: 0
      rx0_xdp_tx_cqes: 0
      rx1_packets: 5550585106
      rx1_bytes: 7255635262803
      rx1_csum_complete: 5550585106
      rx1_csum_unnecessary: 0
      rx1_csum_unnecessary_inner: 0
      rx1_csum_none: 0
      rx1_xdp_drop: 0
      rx1_xdp_redirect: 0
      rx1_lro_packets: 0
      rx1_lro_bytes: 0
      rx1_ecn_mark: 0
      rx1_removed_vlan_packets: 5550585106
      rx1_wqe_err: 0
      rx1_mpwqe_filler_cqes: 0
      rx1_mpwqe_filler_strides: 0
      rx1_buff_alloc_err: 0
      rx1_cqe_compress_blks: 0
      rx1_cqe_compress_pkts: 0
      rx1_page_reuse: 0
      rx1_cache_reuse: 2918845
      rx1_cache_full: 2772373453
      rx1_cache_empty: 6656
      rx1_cache_busy: 2772373707
      rx1_cache_waive: 0
      rx1_congst_umr: 0
      rx1_arfs_err: 0
      rx1_xdp_tx_xmit: 0
      rx1_xdp_tx_full: 0
      rx1_xdp_tx_err: 0
      rx1_xdp_tx_cqes: 0
      rx2_packets: 5383874739
      rx2_bytes: 7031545423967
      rx2_csum_complete: 5383874739
      rx2_csum_unnecessary: 0
      rx2_csum_unnecessary_inner: 0
      rx2_csum_none: 0
      rx2_xdp_drop: 0
      rx2_xdp_redirect: 0
      rx2_lro_packets: 0
      rx2_lro_bytes: 0
      rx2_ecn_mark: 0
      rx2_removed_vlan_packets: 5383874739
      rx2_wqe_err: 0
      rx2_mpwqe_filler_cqes: 0
      rx2_mpwqe_filler_strides: 0
      rx2_buff_alloc_err: 0
      rx2_cqe_compress_blks: 0
      rx2_cqe_compress_pkts: 0
      rx2_page_reuse: 0
      rx2_cache_reuse: 2173370
      rx2_cache_full: 2689763744
      rx2_cache_empty: 6656
      rx2_cache_busy: 2689763998
      rx2_cache_waive: 0
      rx2_congst_umr: 0
      rx2_arfs_err: 0
      rx2_xdp_tx_xmit: 0
      rx2_xdp_tx_full: 0
      rx2_xdp_tx_err: 0
      rx2_xdp_tx_cqes: 0
      rx3_packets: 5456494012
      rx3_bytes: 7120241119485
      rx3_csum_complete: 5456494012
      rx3_csum_unnecessary: 0
      rx3_csum_unnecessary_inner: 0
      rx3_csum_none: 0
      rx3_xdp_drop: 0
      rx3_xdp_redirect: 0
      rx3_lro_packets: 0
      rx3_lro_bytes: 0
      rx3_ecn_mark: 0
      rx3_removed_vlan_packets: 5456494012
      rx3_wqe_err: 0
      rx3_mpwqe_filler_cqes: 0
      rx3_mpwqe_filler_strides: 0
      rx3_buff_alloc_err: 0
      rx3_cqe_compress_blks: 0
      rx3_cqe_compress_pkts: 0
      rx3_page_reuse: 0
      rx3_cache_reuse: 2120123
      rx3_cache_full: 2726126628
      rx3_cache_empty: 6656
      rx3_cache_busy: 2726126881
      rx3_cache_waive: 0
      rx3_congst_umr: 0
      rx3_arfs_err: 0
      rx3_xdp_tx_xmit: 0
      rx3_xdp_tx_full: 0
      rx3_xdp_tx_err: 0
      rx3_xdp_tx_cqes: 0
      rx4_packets: 5475216251
      rx4_bytes: 7123129170196
      rx4_csum_complete: 5475216251
      rx4_csum_unnecessary: 0
      rx4_csum_unnecessary_inner: 0
      rx4_csum_none: 0
      rx4_xdp_drop: 0
      rx4_xdp_redirect: 0
      rx4_lro_packets: 0
      rx4_lro_bytes: 0
      rx4_ecn_mark: 0
      rx4_removed_vlan_packets: 5475216251
      rx4_wqe_err: 0
      rx4_mpwqe_filler_cqes: 0
      rx4_mpwqe_filler_strides: 0
      rx4_buff_alloc_err: 0
      rx4_cqe_compress_blks: 0
      rx4_cqe_compress_pkts: 0
      rx4_page_reuse: 0
      rx4_cache_reuse: 2668296355
      rx4_cache_full: 69311549
      rx4_cache_empty: 6656
      rx4_cache_busy: 69311769
      rx4_cache_waive: 0
      rx4_congst_umr: 0
      rx4_arfs_err: 0
      rx4_xdp_tx_xmit: 0
      rx4_xdp_tx_full: 0
      rx4_xdp_tx_err: 0
      rx4_xdp_tx_cqes: 0
      rx5_packets: 5474372232
      rx5_bytes: 7159146801926
      rx5_csum_complete: 5474372232
      rx5_csum_unnecessary: 0
      rx5_csum_unnecessary_inner: 0
      rx5_csum_none: 0
      rx5_xdp_drop: 0
      rx5_xdp_redirect: 0
      rx5_lro_packets: 0
      rx5_lro_bytes: 0
      rx5_ecn_mark: 0
      rx5_removed_vlan_packets: 5474372232
      rx5_wqe_err: 0
      rx5_mpwqe_filler_cqes: 0
      rx5_mpwqe_filler_strides: 0
      rx5_buff_alloc_err: 0
      rx5_cqe_compress_blks: 0
      rx5_cqe_compress_pkts: 0
      rx5_page_reuse: 0
      rx5_cache_reuse: 626187
      rx5_cache_full: 2736559674
      rx5_cache_empty: 6656
      rx5_cache_busy: 2736559929
      rx5_cache_waive: 0
      rx5_congst_umr: 0
      rx5_arfs_err: 0
      rx5_xdp_tx_xmit: 0
      rx5_xdp_tx_full: 0
      rx5_xdp_tx_err: 0
      rx5_xdp_tx_cqes: 0
      rx6_packets: 5533622456
      rx6_bytes: 7207308809081
      rx6_csum_complete: 5533622456
      rx6_csum_unnecessary: 0
      rx6_csum_unnecessary_inner: 0
      rx6_csum_none: 0
      rx6_xdp_drop: 0
      rx6_xdp_redirect: 0
      rx6_lro_packets: 0
      rx6_lro_bytes: 0
      rx6_ecn_mark: 0
      rx6_removed_vlan_packets: 5533622456
      rx6_wqe_err: 0
      rx6_mpwqe_filler_cqes: 0
      rx6_mpwqe_filler_strides: 0
      rx6_buff_alloc_err: 0
      rx6_cqe_compress_blks: 0
      rx6_cqe_compress_pkts: 0
      rx6_page_reuse: 0
      rx6_cache_reuse: 2325217
      rx6_cache_full: 2764485756
      rx6_cache_empty: 6656
      rx6_cache_busy: 2764486011
      rx6_cache_waive: 0
      rx6_congst_umr: 0
      rx6_arfs_err: 0
      rx6_xdp_tx_xmit: 0
      rx6_xdp_tx_full: 0
      rx6_xdp_tx_err: 0
      rx6_xdp_tx_cqes: 0
      rx7_packets: 5533901822
      rx7_bytes: 7227441240536
      rx7_csum_complete: 5533901822
      rx7_csum_unnecessary: 0
      rx7_csum_unnecessary_inner: 0
      rx7_csum_none: 0
      rx7_xdp_drop: 0
      rx7_xdp_redirect: 0
      rx7_lro_packets: 0
      rx7_lro_bytes: 0
      rx7_ecn_mark: 0
      rx7_removed_vlan_packets: 5533901822
      rx7_wqe_err: 0
      rx7_mpwqe_filler_cqes: 0
      rx7_mpwqe_filler_strides: 0
      rx7_buff_alloc_err: 0
      rx7_cqe_compress_blks: 0
      rx7_cqe_compress_pkts: 0
      rx7_page_reuse: 0
      rx7_cache_reuse: 2372505
      rx7_cache_full: 2764578151
      rx7_cache_empty: 6656
      rx7_cache_busy: 2764578403
      rx7_cache_waive: 0
      rx7_congst_umr: 0
      rx7_arfs_err: 0
      rx7_xdp_tx_xmit: 0
      rx7_xdp_tx_full: 0
      rx7_xdp_tx_err: 0
      rx7_xdp_tx_cqes: 0
      rx8_packets: 5485670137
      rx8_bytes: 7203339989013
      rx8_csum_complete: 5485670137
      rx8_csum_unnecessary: 0
      rx8_csum_unnecessary_inner: 0
      rx8_csum_none: 0
      rx8_xdp_drop: 0
      rx8_xdp_redirect: 0
      rx8_lro_packets: 0
      rx8_lro_bytes: 0
      rx8_ecn_mark: 0
      rx8_removed_vlan_packets: 5485670137
      rx8_wqe_err: 0
      rx8_mpwqe_filler_cqes: 0
      rx8_mpwqe_filler_strides: 0
      rx8_buff_alloc_err: 0
      rx8_cqe_compress_blks: 0
      rx8_cqe_compress_pkts: 0
      rx8_page_reuse: 0
      rx8_cache_reuse: 7522232
      rx8_cache_full: 2735312581
      rx8_cache_empty: 6656
      rx8_cache_busy: 2735312836
      rx8_cache_waive: 0
      rx8_congst_umr: 0
      rx8_arfs_err: 0
      rx8_xdp_tx_xmit: 0
      rx8_xdp_tx_full: 0
      rx8_xdp_tx_err: 0
      rx8_xdp_tx_cqes: 0
      rx9_packets: 5482212354
      rx9_bytes: 7169663341718
      rx9_csum_complete: 5482212354
      rx9_csum_unnecessary: 0
      rx9_csum_unnecessary_inner: 0
      rx9_csum_none: 0
      rx9_xdp_drop: 0
      rx9_xdp_redirect: 0
      rx9_lro_packets: 0
      rx9_lro_bytes: 0
      rx9_ecn_mark: 0
      rx9_removed_vlan_packets: 5482212354
      rx9_wqe_err: 0
      rx9_mpwqe_filler_cqes: 0
      rx9_mpwqe_filler_strides: 0
      rx9_buff_alloc_err: 0
      rx9_cqe_compress_blks: 0
      rx9_cqe_compress_pkts: 0
      rx9_page_reuse: 0
      rx9_cache_reuse: 37279961
      rx9_cache_full: 2703825961
      rx9_cache_empty: 6656
      rx9_cache_busy: 2703826215
      rx9_cache_waive: 0
      rx9_congst_umr: 0
      rx9_arfs_err: 0
      rx9_xdp_tx_xmit: 0
      rx9_xdp_tx_full: 0
      rx9_xdp_tx_err: 0
      rx9_xdp_tx_cqes: 0
      rx10_packets: 5524679952
      rx10_bytes: 7248301275181
      rx10_csum_complete: 5524679952
      rx10_csum_unnecessary: 0
      rx10_csum_unnecessary_inner: 0
      rx10_csum_none: 0
      rx10_xdp_drop: 0
      rx10_xdp_redirect: 0
      rx10_lro_packets: 0
      rx10_lro_bytes: 0
      rx10_ecn_mark: 0
      rx10_removed_vlan_packets: 5524679952
      rx10_wqe_err: 0
      rx10_mpwqe_filler_cqes: 0
      rx10_mpwqe_filler_strides: 0
      rx10_buff_alloc_err: 0
      rx10_cqe_compress_blks: 0
      rx10_cqe_compress_pkts: 0
      rx10_page_reuse: 0
      rx10_cache_reuse: 2049666
      rx10_cache_full: 2760290055
      rx10_cache_empty: 6656
      rx10_cache_busy: 2760290310
      rx10_cache_waive: 0
      rx10_congst_umr: 0
      rx10_arfs_err: 0
      rx10_xdp_tx_xmit: 0
      rx10_xdp_tx_full: 0
      rx10_xdp_tx_err: 0
      rx10_xdp_tx_cqes: 0
      rx11_packets: 5394633545
      rx11_bytes: 7033509636092
      rx11_csum_complete: 5394633545
      rx11_csum_unnecessary: 0
      rx11_csum_unnecessary_inner: 0
      rx11_csum_none: 0
      rx11_xdp_drop: 0
      rx11_xdp_redirect: 0
      rx11_lro_packets: 0
      rx11_lro_bytes: 0
      rx11_ecn_mark: 0
      rx11_removed_vlan_packets: 5394633545
      rx11_wqe_err: 0
      rx11_mpwqe_filler_cqes: 0
      rx11_mpwqe_filler_strides: 0
      rx11_buff_alloc_err: 0
      rx11_cqe_compress_blks: 0
      rx11_cqe_compress_pkts: 0
      rx11_page_reuse: 0
      rx11_cache_reuse: 2617466268
      rx11_cache_full: 79850284
      rx11_cache_empty: 6656
      rx11_cache_busy: 79850504
      rx11_cache_waive: 0
      rx11_congst_umr: 0
      rx11_arfs_err: 0
      rx11_xdp_tx_xmit: 0
      rx11_xdp_tx_full: 0
      rx11_xdp_tx_err: 0
      rx11_xdp_tx_cqes: 0
      rx12_packets: 5458907385
      rx12_bytes: 7134867867515
      rx12_csum_complete: 5458907385
      rx12_csum_unnecessary: 0
      rx12_csum_unnecessary_inner: 0
      rx12_csum_none: 0
      rx12_xdp_drop: 0
      rx12_xdp_redirect: 0
      rx12_lro_packets: 0
      rx12_lro_bytes: 0
      rx12_ecn_mark: 0
      rx12_removed_vlan_packets: 5458907385
      rx12_wqe_err: 0
      rx12_mpwqe_filler_cqes: 0
      rx12_mpwqe_filler_strides: 0
      rx12_buff_alloc_err: 0
      rx12_cqe_compress_blks: 0
      rx12_cqe_compress_pkts: 0
      rx12_page_reuse: 0
      rx12_cache_reuse: 2650214169
      rx12_cache_full: 79239303
      rx12_cache_empty: 6656
      rx12_cache_busy: 79239523
      rx12_cache_waive: 0
      rx12_congst_umr: 0
      rx12_arfs_err: 0
      rx12_xdp_tx_xmit: 0
      rx12_xdp_tx_full: 0
      rx12_xdp_tx_err: 0
      rx12_xdp_tx_cqes: 0
      rx13_packets: 5549932912
      rx13_bytes: 7232548705586
      rx13_csum_complete: 5549932912
      rx13_csum_unnecessary: 0
      rx13_csum_unnecessary_inner: 0
      rx13_csum_none: 0
      rx13_xdp_drop: 0
      rx13_xdp_redirect: 0
      rx13_lro_packets: 0
      rx13_lro_bytes: 0
      rx13_ecn_mark: 0
      rx13_removed_vlan_packets: 5549932912
      rx13_wqe_err: 0
      rx13_mpwqe_filler_cqes: 0
      rx13_mpwqe_filler_strides: 0
      rx13_buff_alloc_err: 0
      rx13_cqe_compress_blks: 0
      rx13_cqe_compress_pkts: 0
      rx13_page_reuse: 0
      rx13_cache_reuse: 2417696
      rx13_cache_full: 2772548505
      rx13_cache_empty: 6656
      rx13_cache_busy: 2772548760
      rx13_cache_waive: 0
      rx13_congst_umr: 0
      rx13_arfs_err: 0
      rx13_xdp_tx_xmit: 0
      rx13_xdp_tx_full: 0
      rx13_xdp_tx_err: 0
      rx13_xdp_tx_cqes: 0
      rx14_packets: 5517712329
      rx14_bytes: 7192111965227
      rx14_csum_complete: 5517712329
      rx14_csum_unnecessary: 0
      rx14_csum_unnecessary_inner: 0
      rx14_csum_none: 0
      rx14_xdp_drop: 0
      rx14_xdp_redirect: 0
      rx14_lro_packets: 0
      rx14_lro_bytes: 0
      rx14_ecn_mark: 0
      rx14_removed_vlan_packets: 5517712329
      rx14_wqe_err: 0
      rx14_mpwqe_filler_cqes: 0
      rx14_mpwqe_filler_strides: 0
      rx14_buff_alloc_err: 0
      rx14_cqe_compress_blks: 0
      rx14_cqe_compress_pkts: 0
      rx14_page_reuse: 0
      rx14_cache_reuse: 1830206
      rx14_cache_full: 2757025703
      rx14_cache_empty: 6656
      rx14_cache_busy: 2757025958
      rx14_cache_waive: 0
      rx14_congst_umr: 0
      rx14_arfs_err: 0
      rx14_xdp_tx_xmit: 0
      rx14_xdp_tx_full: 0
      rx14_xdp_tx_err: 0
      rx14_xdp_tx_cqes: 0
      rx15_packets: 5578343373
      rx15_bytes: 7268484501219
      rx15_csum_complete: 5578343373
      rx15_csum_unnecessary: 0
      rx15_csum_unnecessary_inner: 0
      rx15_csum_none: 0
      rx15_xdp_drop: 0
      rx15_xdp_redirect: 0
      rx15_lro_packets: 0
      rx15_lro_bytes: 0
      rx15_ecn_mark: 0
      rx15_removed_vlan_packets: 5578343373
      rx15_wqe_err: 0
      rx15_mpwqe_filler_cqes: 0
      rx15_mpwqe_filler_strides: 0
      rx15_buff_alloc_err: 0
      rx15_cqe_compress_blks: 0
      rx15_cqe_compress_pkts: 0
      rx15_page_reuse: 0
      rx15_cache_reuse: 2317165
      rx15_cache_full: 2786854266
      rx15_cache_empty: 6656
      rx15_cache_busy: 2786854519
      rx15_cache_waive: 0
      rx15_congst_umr: 0
      rx15_arfs_err: 0
      rx15_xdp_tx_xmit: 0
      rx15_xdp_tx_full: 0
      rx15_xdp_tx_err: 0
      rx15_xdp_tx_cqes: 0
      rx16_packets: 4435773951
      rx16_bytes: 5766665272007
      rx16_csum_complete: 4435773951
      rx16_csum_unnecessary: 0
      rx16_csum_unnecessary_inner: 0
      rx16_csum_none: 0
      rx16_xdp_drop: 0
      rx16_xdp_redirect: 0
      rx16_lro_packets: 0
      rx16_lro_bytes: 0
      rx16_ecn_mark: 0
      rx16_removed_vlan_packets: 4435773951
      rx16_wqe_err: 0
      rx16_mpwqe_filler_cqes: 0
      rx16_mpwqe_filler_strides: 0
      rx16_buff_alloc_err: 0
      rx16_cqe_compress_blks: 0
      rx16_cqe_compress_pkts: 0
      rx16_page_reuse: 0
      rx16_cache_reuse: 2033793
      rx16_cache_full: 2215852927
      rx16_cache_empty: 6656
      rx16_cache_busy: 2215853179
      rx16_cache_waive: 0
      rx16_congst_umr: 0
      rx16_arfs_err: 0
      rx16_xdp_tx_xmit: 0
      rx16_xdp_tx_full: 0
      rx16_xdp_tx_err: 0
      rx16_xdp_tx_cqes: 0
      rx17_packets: 4344087587
      rx17_bytes: 5695006496323
      rx17_csum_complete: 4344087587
      rx17_csum_unnecessary: 0
      rx17_csum_unnecessary_inner: 0
      rx17_csum_none: 0
      rx17_xdp_drop: 0
      rx17_xdp_redirect: 0
      rx17_lro_packets: 0
      rx17_lro_bytes: 0
      rx17_ecn_mark: 0
      rx17_removed_vlan_packets: 4344087587
      rx17_wqe_err: 0
      rx17_mpwqe_filler_cqes: 0
      rx17_mpwqe_filler_strides: 0
      rx17_buff_alloc_err: 0
      rx17_cqe_compress_blks: 0
      rx17_cqe_compress_pkts: 0
      rx17_page_reuse: 0
      rx17_cache_reuse: 2652127
      rx17_cache_full: 2169391411
      rx17_cache_empty: 6656
      rx17_cache_busy: 2169391665
      rx17_cache_waive: 0
      rx17_congst_umr: 0
      rx17_arfs_err: 0
      rx17_xdp_tx_xmit: 0
      rx17_xdp_tx_full: 0
      rx17_xdp_tx_err: 0
      rx17_xdp_tx_cqes: 0
      rx18_packets: 4407422804
      rx18_bytes: 5741134634177
      rx18_csum_complete: 4407422804
      rx18_csum_unnecessary: 0
      rx18_csum_unnecessary_inner: 0
      rx18_csum_none: 0
      rx18_xdp_drop: 0
      rx18_xdp_redirect: 0
      rx18_lro_packets: 0
      rx18_lro_bytes: 0
      rx18_ecn_mark: 0
      rx18_removed_vlan_packets: 4407422804
      rx18_wqe_err: 0
      rx18_mpwqe_filler_cqes: 0
      rx18_mpwqe_filler_strides: 0
      rx18_buff_alloc_err: 0
      rx18_cqe_compress_blks: 0
      rx18_cqe_compress_pkts: 0
      rx18_page_reuse: 0
      rx18_cache_reuse: 2156080239
      rx18_cache_full: 47630941
      rx18_cache_empty: 6656
      rx18_cache_busy: 47631161
      rx18_cache_waive: 0
      rx18_congst_umr: 0
      rx18_arfs_err: 0
      rx18_xdp_tx_xmit: 0
      rx18_xdp_tx_full: 0
      rx18_xdp_tx_err: 0
      rx18_xdp_tx_cqes: 0
      rx19_packets: 4545554180
      rx19_bytes: 5905277503466
      rx19_csum_complete: 4545554180
      rx19_csum_unnecessary: 0
      rx19_csum_unnecessary_inner: 0
      rx19_csum_none: 0
      rx19_xdp_drop: 0
      rx19_xdp_redirect: 0
      rx19_lro_packets: 0
      rx19_lro_bytes: 0
      rx19_ecn_mark: 0
      rx19_removed_vlan_packets: 4545554180
      rx19_wqe_err: 0
      rx19_mpwqe_filler_cqes: 0
      rx19_mpwqe_filler_strides: 0
      rx19_buff_alloc_err: 0
      rx19_cqe_compress_blks: 0
      rx19_cqe_compress_pkts: 0
      rx19_page_reuse: 0
      rx19_cache_reuse: 11112455
      rx19_cache_full: 2261664379
      rx19_cache_empty: 6656
      rx19_cache_busy: 2261664601
      rx19_cache_waive: 0
      rx19_congst_umr: 0
      rx19_arfs_err: 0
      rx19_xdp_tx_xmit: 0
      rx19_xdp_tx_full: 0
      rx19_xdp_tx_err: 0
      rx19_xdp_tx_cqes: 0
      rx20_packets: 4397428553
      rx20_bytes: 5757329184301
      rx20_csum_complete: 4397428553
      rx20_csum_unnecessary: 0
      rx20_csum_unnecessary_inner: 0
      rx20_csum_none: 0
      rx20_xdp_drop: 0
      rx20_xdp_redirect: 0
      rx20_lro_packets: 0
      rx20_lro_bytes: 0
      rx20_ecn_mark: 0
      rx20_removed_vlan_packets: 4397428553
      rx20_wqe_err: 0
      rx20_mpwqe_filler_cqes: 0
      rx20_mpwqe_filler_strides: 0
      rx20_buff_alloc_err: 0
      rx20_cqe_compress_blks: 0
      rx20_cqe_compress_pkts: 0
      rx20_page_reuse: 0
      rx20_cache_reuse: 2168116995
      rx20_cache_full: 30597061
      rx20_cache_empty: 6656
      rx20_cache_busy: 30597281
      rx20_cache_waive: 0
      rx20_congst_umr: 0
      rx20_arfs_err: 0
      rx20_xdp_tx_xmit: 0
      rx20_xdp_tx_full: 0
      rx20_xdp_tx_err: 0
      rx20_xdp_tx_cqes: 0
      rx21_packets: 4552564821
      rx21_bytes: 5944840329249
      rx21_csum_complete: 4552564821
      rx21_csum_unnecessary: 0
      rx21_csum_unnecessary_inner: 0
      rx21_csum_none: 0
      rx21_xdp_drop: 0
      rx21_xdp_redirect: 0
      rx21_lro_packets: 0
      rx21_lro_bytes: 0
      rx21_ecn_mark: 0
      rx21_removed_vlan_packets: 4552564821
      rx21_wqe_err: 0
      rx21_mpwqe_filler_cqes: 0
      rx21_mpwqe_filler_strides: 0
      rx21_buff_alloc_err: 0
      rx21_cqe_compress_blks: 0
      rx21_cqe_compress_pkts: 0
      rx21_page_reuse: 0
      rx21_cache_reuse: 2295681
      rx21_cache_full: 2273986474
      rx21_cache_empty: 6656
      rx21_cache_busy: 2273986727
      rx21_cache_waive: 0
      rx21_congst_umr: 0
      rx21_arfs_err: 0
      rx21_xdp_tx_xmit: 0
      rx21_xdp_tx_full: 0
      rx21_xdp_tx_err: 0
      rx21_xdp_tx_cqes: 0
      rx22_packets: 4629499740
      rx22_bytes: 5924206566499
      rx22_csum_complete: 4629499740
      rx22_csum_unnecessary: 0
      rx22_csum_unnecessary_inner: 0
      rx22_csum_none: 0
      rx22_xdp_drop: 0
      rx22_xdp_redirect: 0
      rx22_lro_packets: 0
      rx22_lro_bytes: 0
      rx22_ecn_mark: 0
      rx22_removed_vlan_packets: 4629499740
      rx22_wqe_err: 0
      rx22_mpwqe_filler_cqes: 0
      rx22_mpwqe_filler_strides: 0
      rx22_buff_alloc_err: 0
      rx22_cqe_compress_blks: 0
      rx22_cqe_compress_pkts: 0
      rx22_page_reuse: 0
      rx22_cache_reuse: 1407527
      rx22_cache_full: 2313342088
      rx22_cache_empty: 6656
      rx22_cache_busy: 2313342341
      rx22_cache_waive: 0
      rx22_congst_umr: 0
      rx22_arfs_err: 0
      rx22_xdp_tx_xmit: 0
      rx22_xdp_tx_full: 0
      rx22_xdp_tx_err: 0
      rx22_xdp_tx_cqes: 0
      rx23_packets: 4387124505
      rx23_bytes: 5718118678470
      rx23_csum_complete: 4387124505
      rx23_csum_unnecessary: 0
      rx23_csum_unnecessary_inner: 0
      rx23_csum_none: 0
      rx23_xdp_drop: 0
      rx23_xdp_redirect: 0
      rx23_lro_packets: 0
      rx23_lro_bytes: 0
      rx23_ecn_mark: 0
      rx23_removed_vlan_packets: 4387124505
      rx23_wqe_err: 0
      rx23_mpwqe_filler_cqes: 0
      rx23_mpwqe_filler_strides: 0
      rx23_buff_alloc_err: 0
      rx23_cqe_compress_blks: 0
      rx23_cqe_compress_pkts: 0
      rx23_page_reuse: 0
      rx23_cache_reuse: 2013280
      rx23_cache_full: 2191548717
      rx23_cache_empty: 6656
      rx23_cache_busy: 2191548972
      rx23_cache_waive: 0
      rx23_congst_umr: 0
      rx23_arfs_err: 0
      rx23_xdp_tx_xmit: 0
      rx23_xdp_tx_full: 0
      rx23_xdp_tx_err: 0
      rx23_xdp_tx_cqes: 0
      rx24_packets: 4398791634
      rx24_bytes: 5744875564632
      rx24_csum_complete: 4398791634
      rx24_csum_unnecessary: 0
      rx24_csum_unnecessary_inner: 0
      rx24_csum_none: 0
      rx24_xdp_drop: 0
      rx24_xdp_redirect: 0
      rx24_lro_packets: 0
      rx24_lro_bytes: 0
      rx24_ecn_mark: 0
      rx24_removed_vlan_packets: 4398791634
      rx24_wqe_err: 0
      rx24_mpwqe_filler_cqes: 0
      rx24_mpwqe_filler_strides: 0
      rx24_buff_alloc_err: 0
      rx24_cqe_compress_blks: 0
      rx24_cqe_compress_pkts: 0
      rx24_page_reuse: 0
      rx24_cache_reuse: 2143926100
      rx24_cache_full: 55469496
      rx24_cache_empty: 6656
      rx24_cache_busy: 55469716
      rx24_cache_waive: 0
      rx24_congst_umr: 0
      rx24_arfs_err: 0
      rx24_xdp_tx_xmit: 0
      rx24_xdp_tx_full: 0
      rx24_xdp_tx_err: 0
      rx24_xdp_tx_cqes: 0
      rx25_packets: 4377204935
      rx25_bytes: 5710369124105
      rx25_csum_complete: 4377204935
      rx25_csum_unnecessary: 0
      rx25_csum_unnecessary_inner: 0
      rx25_csum_none: 0
      rx25_xdp_drop: 0
      rx25_xdp_redirect: 0
      rx25_lro_packets: 0
      rx25_lro_bytes: 0
      rx25_ecn_mark: 0
      rx25_removed_vlan_packets: 4377204935
      rx25_wqe_err: 0
      rx25_mpwqe_filler_cqes: 0
      rx25_mpwqe_filler_strides: 0
      rx25_buff_alloc_err: 0
      rx25_cqe_compress_blks: 0
      rx25_cqe_compress_pkts: 0
      rx25_page_reuse: 0
      rx25_cache_reuse: 2132658660
      rx25_cache_full: 55943584
      rx25_cache_empty: 6656
      rx25_cache_busy: 55943804
      rx25_cache_waive: 0
      rx25_congst_umr: 0
      rx25_arfs_err: 0
      rx25_xdp_tx_xmit: 0
      rx25_xdp_tx_full: 0
      rx25_xdp_tx_err: 0
      rx25_xdp_tx_cqes: 0
      rx26_packets: 4496003688
      rx26_bytes: 5862180715503
      rx26_csum_complete: 4496003688
      rx26_csum_unnecessary: 0
      rx26_csum_unnecessary_inner: 0
      rx26_csum_none: 0
      rx26_xdp_drop: 0
      rx26_xdp_redirect: 0
      rx26_lro_packets: 0
      rx26_lro_bytes: 0
      rx26_ecn_mark: 0
      rx26_removed_vlan_packets: 4496003688
      rx26_wqe_err: 0
      rx26_mpwqe_filler_cqes: 0
      rx26_mpwqe_filler_strides: 0
      rx26_buff_alloc_err: 0
      rx26_cqe_compress_blks: 0
      rx26_cqe_compress_pkts: 0
      rx26_page_reuse: 0
      rx26_cache_reuse: 8
      rx26_cache_full: 2248001581
      rx26_cache_empty: 6656
      rx26_cache_busy: 2248001836
      rx26_cache_waive: 0
      rx26_congst_umr: 0
      rx26_arfs_err: 0
      rx26_xdp_tx_xmit: 0
      rx26_xdp_tx_full: 0
      rx26_xdp_tx_err: 0
      rx26_xdp_tx_cqes: 0
      rx27_packets: 4341849333
      rx27_bytes: 5678653545018
      rx27_csum_complete: 4341849333
      rx27_csum_unnecessary: 0
      rx27_csum_unnecessary_inner: 0
      rx27_csum_none: 0
      rx27_xdp_drop: 0
      rx27_xdp_redirect: 0
      rx27_lro_packets: 0
      rx27_lro_bytes: 0
      rx27_ecn_mark: 0
      rx27_removed_vlan_packets: 4341849333
      rx27_wqe_err: 0
      rx27_mpwqe_filler_cqes: 0
      rx27_mpwqe_filler_strides: 0
      rx27_buff_alloc_err: 0
      rx27_cqe_compress_blks: 0
      rx27_cqe_compress_pkts: 0
      rx27_page_reuse: 0
      rx27_cache_reuse: 1748188
      rx27_cache_full: 2169176223
      rx27_cache_empty: 6656
      rx27_cache_busy: 2169176476
      rx27_cache_waive: 0
      rx27_congst_umr: 0
      rx27_arfs_err: 0
      rx27_xdp_tx_xmit: 0
      rx27_xdp_tx_full: 0
      rx27_xdp_tx_err: 0
      rx27_xdp_tx_cqes: 0
      rx28_packets: 0
      rx28_bytes: 0
      rx28_csum_complete: 0
      rx28_csum_unnecessary: 0
      rx28_csum_unnecessary_inner: 0
      rx28_csum_none: 0
      rx28_xdp_drop: 0
      rx28_xdp_redirect: 0
      rx28_lro_packets: 0
      rx28_lro_bytes: 0
      rx28_ecn_mark: 0
      rx28_removed_vlan_packets: 0
      rx28_wqe_err: 0
      rx28_mpwqe_filler_cqes: 0
      rx28_mpwqe_filler_strides: 0
      rx28_buff_alloc_err: 0
      rx28_cqe_compress_blks: 0
      rx28_cqe_compress_pkts: 0
      rx28_page_reuse: 0
      rx28_cache_reuse: 0
      rx28_cache_full: 0
      rx28_cache_empty: 2560
      rx28_cache_busy: 0
      rx28_cache_waive: 0
      rx28_congst_umr: 0
      rx28_arfs_err: 0
      rx28_xdp_tx_xmit: 0
      rx28_xdp_tx_full: 0
      rx28_xdp_tx_err: 0
      rx28_xdp_tx_cqes: 0
      rx29_packets: 0
      rx29_bytes: 0
      rx29_csum_complete: 0
      rx29_csum_unnecessary: 0
      rx29_csum_unnecessary_inner: 0
      rx29_csum_none: 0
      rx29_xdp_drop: 0
      rx29_xdp_redirect: 0
      rx29_lro_packets: 0
      rx29_lro_bytes: 0
      rx29_ecn_mark: 0
      rx29_removed_vlan_packets: 0
      rx29_wqe_err: 0
      rx29_mpwqe_filler_cqes: 0
      rx29_mpwqe_filler_strides: 0
      rx29_buff_alloc_err: 0
      rx29_cqe_compress_blks: 0
      rx29_cqe_compress_pkts: 0
      rx29_page_reuse: 0
      rx29_cache_reuse: 0
      rx29_cache_full: 0
      rx29_cache_empty: 2560
      rx29_cache_busy: 0
      rx29_cache_waive: 0
      rx29_congst_umr: 0
      rx29_arfs_err: 0
      rx29_xdp_tx_xmit: 0
      rx29_xdp_tx_full: 0
      rx29_xdp_tx_err: 0
      rx29_xdp_tx_cqes: 0
      rx30_packets: 0
      rx30_bytes: 0
      rx30_csum_complete: 0
      rx30_csum_unnecessary: 0
      rx30_csum_unnecessary_inner: 0
      rx30_csum_none: 0
      rx30_xdp_drop: 0
      rx30_xdp_redirect: 0
      rx30_lro_packets: 0
      rx30_lro_bytes: 0
      rx30_ecn_mark: 0
      rx30_removed_vlan_packets: 0
      rx30_wqe_err: 0
      rx30_mpwqe_filler_cqes: 0
      rx30_mpwqe_filler_strides: 0
      rx30_buff_alloc_err: 0
      rx30_cqe_compress_blks: 0
      rx30_cqe_compress_pkts: 0
      rx30_page_reuse: 0
      rx30_cache_reuse: 0
      rx30_cache_full: 0
      rx30_cache_empty: 2560
      rx30_cache_busy: 0
      rx30_cache_waive: 0
      rx30_congst_umr: 0
      rx30_arfs_err: 0
      rx30_xdp_tx_xmit: 0
      rx30_xdp_tx_full: 0
      rx30_xdp_tx_err: 0
      rx30_xdp_tx_cqes: 0
      rx31_packets: 0
      rx31_bytes: 0
      rx31_csum_complete: 0
      rx31_csum_unnecessary: 0
      rx31_csum_unnecessary_inner: 0
      rx31_csum_none: 0
      rx31_xdp_drop: 0
      rx31_xdp_redirect: 0
      rx31_lro_packets: 0
      rx31_lro_bytes: 0
      rx31_ecn_mark: 0
      rx31_removed_vlan_packets: 0
      rx31_wqe_err: 0
      rx31_mpwqe_filler_cqes: 0
      rx31_mpwqe_filler_strides: 0
      rx31_buff_alloc_err: 0
      rx31_cqe_compress_blks: 0
      rx31_cqe_compress_pkts: 0
      rx31_page_reuse: 0
      rx31_cache_reuse: 0
      rx31_cache_full: 0
      rx31_cache_empty: 2560
      rx31_cache_busy: 0
      rx31_cache_waive: 0
      rx31_congst_umr: 0
      rx31_arfs_err: 0
      rx31_xdp_tx_xmit: 0
      rx31_xdp_tx_full: 0
      rx31_xdp_tx_err: 0
      rx31_xdp_tx_cqes: 0
      rx32_packets: 0
      rx32_bytes: 0
      rx32_csum_complete: 0
      rx32_csum_unnecessary: 0
      rx32_csum_unnecessary_inner: 0
      rx32_csum_none: 0
      rx32_xdp_drop: 0
      rx32_xdp_redirect: 0
      rx32_lro_packets: 0
      rx32_lro_bytes: 0
      rx32_ecn_mark: 0
      rx32_removed_vlan_packets: 0
      rx32_wqe_err: 0
      rx32_mpwqe_filler_cqes: 0
      rx32_mpwqe_filler_strides: 0
      rx32_buff_alloc_err: 0
      rx32_cqe_compress_blks: 0
      rx32_cqe_compress_pkts: 0
      rx32_page_reuse: 0
      rx32_cache_reuse: 0
      rx32_cache_full: 0
      rx32_cache_empty: 2560
      rx32_cache_busy: 0
      rx32_cache_waive: 0
      rx32_congst_umr: 0
      rx32_arfs_err: 0
      rx32_xdp_tx_xmit: 0
      rx32_xdp_tx_full: 0
      rx32_xdp_tx_err: 0
      rx32_xdp_tx_cqes: 0
      rx33_packets: 0
      rx33_bytes: 0
      rx33_csum_complete: 0
      rx33_csum_unnecessary: 0
      rx33_csum_unnecessary_inner: 0
      rx33_csum_none: 0
      rx33_xdp_drop: 0
      rx33_xdp_redirect: 0
      rx33_lro_packets: 0
      rx33_lro_bytes: 0
      rx33_ecn_mark: 0
      rx33_removed_vlan_packets: 0
      rx33_wqe_err: 0
      rx33_mpwqe_filler_cqes: 0
      rx33_mpwqe_filler_strides: 0
      rx33_buff_alloc_err: 0
      rx33_cqe_compress_blks: 0
      rx33_cqe_compress_pkts: 0
      rx33_page_reuse: 0
      rx33_cache_reuse: 0
      rx33_cache_full: 0
      rx33_cache_empty: 2560
      rx33_cache_busy: 0
      rx33_cache_waive: 0
      rx33_congst_umr: 0
      rx33_arfs_err: 0
      rx33_xdp_tx_xmit: 0
      rx33_xdp_tx_full: 0
      rx33_xdp_tx_err: 0
      rx33_xdp_tx_cqes: 0
      rx34_packets: 0
      rx34_bytes: 0
      rx34_csum_complete: 0
      rx34_csum_unnecessary: 0
      rx34_csum_unnecessary_inner: 0
      rx34_csum_none: 0
      rx34_xdp_drop: 0
      rx34_xdp_redirect: 0
      rx34_lro_packets: 0
      rx34_lro_bytes: 0
      rx34_ecn_mark: 0
      rx34_removed_vlan_packets: 0
      rx34_wqe_err: 0
      rx34_mpwqe_filler_cqes: 0
      rx34_mpwqe_filler_strides: 0
      rx34_buff_alloc_err: 0
      rx34_cqe_compress_blks: 0
      rx34_cqe_compress_pkts: 0
      rx34_page_reuse: 0
      rx34_cache_reuse: 0
      rx34_cache_full: 0
      rx34_cache_empty: 2560
      rx34_cache_busy: 0
      rx34_cache_waive: 0
      rx34_congst_umr: 0
      rx34_arfs_err: 0
      rx34_xdp_tx_xmit: 0
      rx34_xdp_tx_full: 0
      rx34_xdp_tx_err: 0
      rx34_xdp_tx_cqes: 0
      rx35_packets: 0
      rx35_bytes: 0
      rx35_csum_complete: 0
      rx35_csum_unnecessary: 0
      rx35_csum_unnecessary_inner: 0
      rx35_csum_none: 0
      rx35_xdp_drop: 0
      rx35_xdp_redirect: 0
      rx35_lro_packets: 0
      rx35_lro_bytes: 0
      rx35_ecn_mark: 0
      rx35_removed_vlan_packets: 0
      rx35_wqe_err: 0
      rx35_mpwqe_filler_cqes: 0
      rx35_mpwqe_filler_strides: 0
      rx35_buff_alloc_err: 0
      rx35_cqe_compress_blks: 0
      rx35_cqe_compress_pkts: 0
      rx35_page_reuse: 0
      rx35_cache_reuse: 0
      rx35_cache_full: 0
      rx35_cache_empty: 2560
      rx35_cache_busy: 0
      rx35_cache_waive: 0
      rx35_congst_umr: 0
      rx35_arfs_err: 0
      rx35_xdp_tx_xmit: 0
      rx35_xdp_tx_full: 0
      rx35_xdp_tx_err: 0
      rx35_xdp_tx_cqes: 0
      rx36_packets: 0
      rx36_bytes: 0
      rx36_csum_complete: 0
      rx36_csum_unnecessary: 0
      rx36_csum_unnecessary_inner: 0
      rx36_csum_none: 0
      rx36_xdp_drop: 0
      rx36_xdp_redirect: 0
      rx36_lro_packets: 0
      rx36_lro_bytes: 0
      rx36_ecn_mark: 0
      rx36_removed_vlan_packets: 0
      rx36_wqe_err: 0
      rx36_mpwqe_filler_cqes: 0
      rx36_mpwqe_filler_strides: 0
      rx36_buff_alloc_err: 0
      rx36_cqe_compress_blks: 0
      rx36_cqe_compress_pkts: 0
      rx36_page_reuse: 0
      rx36_cache_reuse: 0
      rx36_cache_full: 0
      rx36_cache_empty: 2560
      rx36_cache_busy: 0
      rx36_cache_waive: 0
      rx36_congst_umr: 0
      rx36_arfs_err: 0
      rx36_xdp_tx_xmit: 0
      rx36_xdp_tx_full: 0
      rx36_xdp_tx_err: 0
      rx36_xdp_tx_cqes: 0
      rx37_packets: 0
      rx37_bytes: 0
      rx37_csum_complete: 0
      rx37_csum_unnecessary: 0
      rx37_csum_unnecessary_inner: 0
      rx37_csum_none: 0
      rx37_xdp_drop: 0
      rx37_xdp_redirect: 0
      rx37_lro_packets: 0
      rx37_lro_bytes: 0
      rx37_ecn_mark: 0
      rx37_removed_vlan_packets: 0
      rx37_wqe_err: 0
      rx37_mpwqe_filler_cqes: 0
      rx37_mpwqe_filler_strides: 0
      rx37_buff_alloc_err: 0
      rx37_cqe_compress_blks: 0
      rx37_cqe_compress_pkts: 0
      rx37_page_reuse: 0
      rx37_cache_reuse: 0
      rx37_cache_full: 0
      rx37_cache_empty: 2560
      rx37_cache_busy: 0
      rx37_cache_waive: 0
      rx37_congst_umr: 0
      rx37_arfs_err: 0
      rx37_xdp_tx_xmit: 0
      rx37_xdp_tx_full: 0
      rx37_xdp_tx_err: 0
      rx37_xdp_tx_cqes: 0
      rx38_packets: 0
      rx38_bytes: 0
      rx38_csum_complete: 0
      rx38_csum_unnecessary: 0
      rx38_csum_unnecessary_inner: 0
      rx38_csum_none: 0
      rx38_xdp_drop: 0
      rx38_xdp_redirect: 0
      rx38_lro_packets: 0
      rx38_lro_bytes: 0
      rx38_ecn_mark: 0
      rx38_removed_vlan_packets: 0
      rx38_wqe_err: 0
      rx38_mpwqe_filler_cqes: 0
      rx38_mpwqe_filler_strides: 0
      rx38_buff_alloc_err: 0
      rx38_cqe_compress_blks: 0
      rx38_cqe_compress_pkts: 0
      rx38_page_reuse: 0
      rx38_cache_reuse: 0
      rx38_cache_full: 0
      rx38_cache_empty: 2560
      rx38_cache_busy: 0
      rx38_cache_waive: 0
      rx38_congst_umr: 0
      rx38_arfs_err: 0
      rx38_xdp_tx_xmit: 0
      rx38_xdp_tx_full: 0
      rx38_xdp_tx_err: 0
      rx38_xdp_tx_cqes: 0
      rx39_packets: 0
      rx39_bytes: 0
      rx39_csum_complete: 0
      rx39_csum_unnecessary: 0
      rx39_csum_unnecessary_inner: 0
      rx39_csum_none: 0
      rx39_xdp_drop: 0
      rx39_xdp_redirect: 0
      rx39_lro_packets: 0
      rx39_lro_bytes: 0
      rx39_ecn_mark: 0
      rx39_removed_vlan_packets: 0
      rx39_wqe_err: 0
      rx39_mpwqe_filler_cqes: 0
      rx39_mpwqe_filler_strides: 0
      rx39_buff_alloc_err: 0
      rx39_cqe_compress_blks: 0
      rx39_cqe_compress_pkts: 0
      rx39_page_reuse: 0
      rx39_cache_reuse: 0
      rx39_cache_full: 0
      rx39_cache_empty: 2560
      rx39_cache_busy: 0
      rx39_cache_waive: 0
      rx39_congst_umr: 0
      rx39_arfs_err: 0
      rx39_xdp_tx_xmit: 0
      rx39_xdp_tx_full: 0
      rx39_xdp_tx_err: 0
      rx39_xdp_tx_cqes: 0
      rx40_packets: 0
      rx40_bytes: 0
      rx40_csum_complete: 0
      rx40_csum_unnecessary: 0
      rx40_csum_unnecessary_inner: 0
      rx40_csum_none: 0
      rx40_xdp_drop: 0
      rx40_xdp_redirect: 0
      rx40_lro_packets: 0
      rx40_lro_bytes: 0
      rx40_ecn_mark: 0
      rx40_removed_vlan_packets: 0
      rx40_wqe_err: 0
      rx40_mpwqe_filler_cqes: 0
      rx40_mpwqe_filler_strides: 0
      rx40_buff_alloc_err: 0
      rx40_cqe_compress_blks: 0
      rx40_cqe_compress_pkts: 0
      rx40_page_reuse: 0
      rx40_cache_reuse: 0
      rx40_cache_full: 0
      rx40_cache_empty: 2560
      rx40_cache_busy: 0
      rx40_cache_waive: 0
      rx40_congst_umr: 0
      rx40_arfs_err: 0
      rx40_xdp_tx_xmit: 0
      rx40_xdp_tx_full: 0
      rx40_xdp_tx_err: 0
      rx40_xdp_tx_cqes: 0
      rx41_packets: 0
      rx41_bytes: 0
      rx41_csum_complete: 0
      rx41_csum_unnecessary: 0
      rx41_csum_unnecessary_inner: 0
      rx41_csum_none: 0
      rx41_xdp_drop: 0
      rx41_xdp_redirect: 0
      rx41_lro_packets: 0
      rx41_lro_bytes: 0
      rx41_ecn_mark: 0
      rx41_removed_vlan_packets: 0
      rx41_wqe_err: 0
      rx41_mpwqe_filler_cqes: 0
      rx41_mpwqe_filler_strides: 0
      rx41_buff_alloc_err: 0
      rx41_cqe_compress_blks: 0
      rx41_cqe_compress_pkts: 0
      rx41_page_reuse: 0
      rx41_cache_reuse: 0
      rx41_cache_full: 0
      rx41_cache_empty: 2560
      rx41_cache_busy: 0
      rx41_cache_waive: 0
      rx41_congst_umr: 0
      rx41_arfs_err: 0
      rx41_xdp_tx_xmit: 0
      rx41_xdp_tx_full: 0
      rx41_xdp_tx_err: 0
      rx41_xdp_tx_cqes: 0
      rx42_packets: 0
      rx42_bytes: 0
      rx42_csum_complete: 0
      rx42_csum_unnecessary: 0
      rx42_csum_unnecessary_inner: 0
      rx42_csum_none: 0
      rx42_xdp_drop: 0
      rx42_xdp_redirect: 0
      rx42_lro_packets: 0
      rx42_lro_bytes: 0
      rx42_ecn_mark: 0
      rx42_removed_vlan_packets: 0
      rx42_wqe_err: 0
      rx42_mpwqe_filler_cqes: 0
      rx42_mpwqe_filler_strides: 0
      rx42_buff_alloc_err: 0
      rx42_cqe_compress_blks: 0
      rx42_cqe_compress_pkts: 0
      rx42_page_reuse: 0
      rx42_cache_reuse: 0
      rx42_cache_full: 0
      rx42_cache_empty: 2560
      rx42_cache_busy: 0
      rx42_cache_waive: 0
      rx42_congst_umr: 0
      rx42_arfs_err: 0
      rx42_xdp_tx_xmit: 0
      rx42_xdp_tx_full: 0
      rx42_xdp_tx_err: 0
      rx42_xdp_tx_cqes: 0
      rx43_packets: 0
      rx43_bytes: 0
      rx43_csum_complete: 0
      rx43_csum_unnecessary: 0
      rx43_csum_unnecessary_inner: 0
      rx43_csum_none: 0
      rx43_xdp_drop: 0
      rx43_xdp_redirect: 0
      rx43_lro_packets: 0
      rx43_lro_bytes: 0
      rx43_ecn_mark: 0
      rx43_removed_vlan_packets: 0
      rx43_wqe_err: 0
      rx43_mpwqe_filler_cqes: 0
      rx43_mpwqe_filler_strides: 0
      rx43_buff_alloc_err: 0
      rx43_cqe_compress_blks: 0
      rx43_cqe_compress_pkts: 0
      rx43_page_reuse: 0
      rx43_cache_reuse: 0
      rx43_cache_full: 0
      rx43_cache_empty: 2560
      rx43_cache_busy: 0
      rx43_cache_waive: 0
      rx43_congst_umr: 0
      rx43_arfs_err: 0
      rx43_xdp_tx_xmit: 0
      rx43_xdp_tx_full: 0
      rx43_xdp_tx_err: 0
      rx43_xdp_tx_cqes: 0
      rx44_packets: 0
      rx44_bytes: 0
      rx44_csum_complete: 0
      rx44_csum_unnecessary: 0
      rx44_csum_unnecessary_inner: 0
      rx44_csum_none: 0
      rx44_xdp_drop: 0
      rx44_xdp_redirect: 0
      rx44_lro_packets: 0
      rx44_lro_bytes: 0
      rx44_ecn_mark: 0
      rx44_removed_vlan_packets: 0
      rx44_wqe_err: 0
      rx44_mpwqe_filler_cqes: 0
      rx44_mpwqe_filler_strides: 0
      rx44_buff_alloc_err: 0
      rx44_cqe_compress_blks: 0
      rx44_cqe_compress_pkts: 0
      rx44_page_reuse: 0
      rx44_cache_reuse: 0
      rx44_cache_full: 0
      rx44_cache_empty: 2560
      rx44_cache_busy: 0
      rx44_cache_waive: 0
      rx44_congst_umr: 0
      rx44_arfs_err: 0
      rx44_xdp_tx_xmit: 0
      rx44_xdp_tx_full: 0
      rx44_xdp_tx_err: 0
      rx44_xdp_tx_cqes: 0
      rx45_packets: 0
      rx45_bytes: 0
      rx45_csum_complete: 0
      rx45_csum_unnecessary: 0
      rx45_csum_unnecessary_inner: 0
      rx45_csum_none: 0
      rx45_xdp_drop: 0
      rx45_xdp_redirect: 0
      rx45_lro_packets: 0
      rx45_lro_bytes: 0
      rx45_ecn_mark: 0
      rx45_removed_vlan_packets: 0
      rx45_wqe_err: 0
      rx45_mpwqe_filler_cqes: 0
      rx45_mpwqe_filler_strides: 0
      rx45_buff_alloc_err: 0
      rx45_cqe_compress_blks: 0
      rx45_cqe_compress_pkts: 0
      rx45_page_reuse: 0
      rx45_cache_reuse: 0
      rx45_cache_full: 0
      rx45_cache_empty: 2560
      rx45_cache_busy: 0
      rx45_cache_waive: 0
      rx45_congst_umr: 0
      rx45_arfs_err: 0
      rx45_xdp_tx_xmit: 0
      rx45_xdp_tx_full: 0
      rx45_xdp_tx_err: 0
      rx45_xdp_tx_cqes: 0
      rx46_packets: 0
      rx46_bytes: 0
      rx46_csum_complete: 0
      rx46_csum_unnecessary: 0
      rx46_csum_unnecessary_inner: 0
      rx46_csum_none: 0
      rx46_xdp_drop: 0
      rx46_xdp_redirect: 0
      rx46_lro_packets: 0
      rx46_lro_bytes: 0
      rx46_ecn_mark: 0
      rx46_removed_vlan_packets: 0
      rx46_wqe_err: 0
      rx46_mpwqe_filler_cqes: 0
      rx46_mpwqe_filler_strides: 0
      rx46_buff_alloc_err: 0
      rx46_cqe_compress_blks: 0
      rx46_cqe_compress_pkts: 0
      rx46_page_reuse: 0
      rx46_cache_reuse: 0
      rx46_cache_full: 0
      rx46_cache_empty: 2560
      rx46_cache_busy: 0
      rx46_cache_waive: 0
      rx46_congst_umr: 0
      rx46_arfs_err: 0
      rx46_xdp_tx_xmit: 0
      rx46_xdp_tx_full: 0
      rx46_xdp_tx_err: 0
      rx46_xdp_tx_cqes: 0
      rx47_packets: 0
      rx47_bytes: 0
      rx47_csum_complete: 0
      rx47_csum_unnecessary: 0
      rx47_csum_unnecessary_inner: 0
      rx47_csum_none: 0
      rx47_xdp_drop: 0
      rx47_xdp_redirect: 0
      rx47_lro_packets: 0
      rx47_lro_bytes: 0
      rx47_ecn_mark: 0
      rx47_removed_vlan_packets: 0
      rx47_wqe_err: 0
      rx47_mpwqe_filler_cqes: 0
      rx47_mpwqe_filler_strides: 0
      rx47_buff_alloc_err: 0
      rx47_cqe_compress_blks: 0
      rx47_cqe_compress_pkts: 0
      rx47_page_reuse: 0
      rx47_cache_reuse: 0
      rx47_cache_full: 0
      rx47_cache_empty: 2560
      rx47_cache_busy: 0
      rx47_cache_waive: 0
      rx47_congst_umr: 0
      rx47_arfs_err: 0
      rx47_xdp_tx_xmit: 0
      rx47_xdp_tx_full: 0
      rx47_xdp_tx_err: 0
      rx47_xdp_tx_cqes: 0
      rx48_packets: 0
      rx48_bytes: 0
      rx48_csum_complete: 0
      rx48_csum_unnecessary: 0
      rx48_csum_unnecessary_inner: 0
      rx48_csum_none: 0
      rx48_xdp_drop: 0
      rx48_xdp_redirect: 0
      rx48_lro_packets: 0
      rx48_lro_bytes: 0
      rx48_ecn_mark: 0
      rx48_removed_vlan_packets: 0
      rx48_wqe_err: 0
      rx48_mpwqe_filler_cqes: 0
      rx48_mpwqe_filler_strides: 0
      rx48_buff_alloc_err: 0
      rx48_cqe_compress_blks: 0
      rx48_cqe_compress_pkts: 0
      rx48_page_reuse: 0
      rx48_cache_reuse: 0
      rx48_cache_full: 0
      rx48_cache_empty: 2560
      rx48_cache_busy: 0
      rx48_cache_waive: 0
      rx48_congst_umr: 0
      rx48_arfs_err: 0
      rx48_xdp_tx_xmit: 0
      rx48_xdp_tx_full: 0
      rx48_xdp_tx_err: 0
      rx48_xdp_tx_cqes: 0
      rx49_packets: 0
      rx49_bytes: 0
      rx49_csum_complete: 0
      rx49_csum_unnecessary: 0
      rx49_csum_unnecessary_inner: 0
      rx49_csum_none: 0
      rx49_xdp_drop: 0
      rx49_xdp_redirect: 0
      rx49_lro_packets: 0
      rx49_lro_bytes: 0
      rx49_ecn_mark: 0
      rx49_removed_vlan_packets: 0
      rx49_wqe_err: 0
      rx49_mpwqe_filler_cqes: 0
      rx49_mpwqe_filler_strides: 0
      rx49_buff_alloc_err: 0
      rx49_cqe_compress_blks: 0
      rx49_cqe_compress_pkts: 0
      rx49_page_reuse: 0
      rx49_cache_reuse: 0
      rx49_cache_full: 0
      rx49_cache_empty: 2560
      rx49_cache_busy: 0
      rx49_cache_waive: 0
      rx49_congst_umr: 0
      rx49_arfs_err: 0
      rx49_xdp_tx_xmit: 0
      rx49_xdp_tx_full: 0
      rx49_xdp_tx_err: 0
      rx49_xdp_tx_cqes: 0
      rx50_packets: 0
      rx50_bytes: 0
      rx50_csum_complete: 0
      rx50_csum_unnecessary: 0
      rx50_csum_unnecessary_inner: 0
      rx50_csum_none: 0
      rx50_xdp_drop: 0
      rx50_xdp_redirect: 0
      rx50_lro_packets: 0
      rx50_lro_bytes: 0
      rx50_ecn_mark: 0
      rx50_removed_vlan_packets: 0
      rx50_wqe_err: 0
      rx50_mpwqe_filler_cqes: 0
      rx50_mpwqe_filler_strides: 0
      rx50_buff_alloc_err: 0
      rx50_cqe_compress_blks: 0
      rx50_cqe_compress_pkts: 0
      rx50_page_reuse: 0
      rx50_cache_reuse: 0
      rx50_cache_full: 0
      rx50_cache_empty: 2560
      rx50_cache_busy: 0
      rx50_cache_waive: 0
      rx50_congst_umr: 0
      rx50_arfs_err: 0
      rx50_xdp_tx_xmit: 0
      rx50_xdp_tx_full: 0
      rx50_xdp_tx_err: 0
      rx50_xdp_tx_cqes: 0
      rx51_packets: 0
      rx51_bytes: 0
      rx51_csum_complete: 0
      rx51_csum_unnecessary: 0
      rx51_csum_unnecessary_inner: 0
      rx51_csum_none: 0
      rx51_xdp_drop: 0
      rx51_xdp_redirect: 0
      rx51_lro_packets: 0
      rx51_lro_bytes: 0
      rx51_ecn_mark: 0
      rx51_removed_vlan_packets: 0
      rx51_wqe_err: 0
      rx51_mpwqe_filler_cqes: 0
      rx51_mpwqe_filler_strides: 0
      rx51_buff_alloc_err: 0
      rx51_cqe_compress_blks: 0
      rx51_cqe_compress_pkts: 0
      rx51_page_reuse: 0
      rx51_cache_reuse: 0
      rx51_cache_full: 0
      rx51_cache_empty: 2560
      rx51_cache_busy: 0
      rx51_cache_waive: 0
      rx51_congst_umr: 0
      rx51_arfs_err: 0
      rx51_xdp_tx_xmit: 0
      rx51_xdp_tx_full: 0
      rx51_xdp_tx_err: 0
      rx51_xdp_tx_cqes: 0
      rx52_packets: 0
      rx52_bytes: 0
      rx52_csum_complete: 0
      rx52_csum_unnecessary: 0
      rx52_csum_unnecessary_inner: 0
      rx52_csum_none: 0
      rx52_xdp_drop: 0
      rx52_xdp_redirect: 0
      rx52_lro_packets: 0
      rx52_lro_bytes: 0
      rx52_ecn_mark: 0
      rx52_removed_vlan_packets: 0
      rx52_wqe_err: 0
      rx52_mpwqe_filler_cqes: 0
      rx52_mpwqe_filler_strides: 0
      rx52_buff_alloc_err: 0
      rx52_cqe_compress_blks: 0
      rx52_cqe_compress_pkts: 0
      rx52_page_reuse: 0
      rx52_cache_reuse: 0
      rx52_cache_full: 0
      rx52_cache_empty: 2560
      rx52_cache_busy: 0
      rx52_cache_waive: 0
      rx52_congst_umr: 0
      rx52_arfs_err: 0
      rx52_xdp_tx_xmit: 0
      rx52_xdp_tx_full: 0
      rx52_xdp_tx_err: 0
      rx52_xdp_tx_cqes: 0
      rx53_packets: 0
      rx53_bytes: 0
      rx53_csum_complete: 0
      rx53_csum_unnecessary: 0
      rx53_csum_unnecessary_inner: 0
      rx53_csum_none: 0
      rx53_xdp_drop: 0
      rx53_xdp_redirect: 0
      rx53_lro_packets: 0
      rx53_lro_bytes: 0
      rx53_ecn_mark: 0
      rx53_removed_vlan_packets: 0
      rx53_wqe_err: 0
      rx53_mpwqe_filler_cqes: 0
      rx53_mpwqe_filler_strides: 0
      rx53_buff_alloc_err: 0
      rx53_cqe_compress_blks: 0
      rx53_cqe_compress_pkts: 0
      rx53_page_reuse: 0
      rx53_cache_reuse: 0
      rx53_cache_full: 0
      rx53_cache_empty: 2560
      rx53_cache_busy: 0
      rx53_cache_waive: 0
      rx53_congst_umr: 0
      rx53_arfs_err: 0
      rx53_xdp_tx_xmit: 0
      rx53_xdp_tx_full: 0
      rx53_xdp_tx_err: 0
      rx53_xdp_tx_cqes: 0
      rx54_packets: 0
      rx54_bytes: 0
      rx54_csum_complete: 0
      rx54_csum_unnecessary: 0
      rx54_csum_unnecessary_inner: 0
      rx54_csum_none: 0
      rx54_xdp_drop: 0
      rx54_xdp_redirect: 0
      rx54_lro_packets: 0
      rx54_lro_bytes: 0
      rx54_ecn_mark: 0
      rx54_removed_vlan_packets: 0
      rx54_wqe_err: 0
      rx54_mpwqe_filler_cqes: 0
      rx54_mpwqe_filler_strides: 0
      rx54_buff_alloc_err: 0
      rx54_cqe_compress_blks: 0
      rx54_cqe_compress_pkts: 0
      rx54_page_reuse: 0
      rx54_cache_reuse: 0
      rx54_cache_full: 0
      rx54_cache_empty: 2560
      rx54_cache_busy: 0
      rx54_cache_waive: 0
      rx54_congst_umr: 0
      rx54_arfs_err: 0
      rx54_xdp_tx_xmit: 0
      rx54_xdp_tx_full: 0
      rx54_xdp_tx_err: 0
      rx54_xdp_tx_cqes: 0
      rx55_packets: 0
      rx55_bytes: 0
      rx55_csum_complete: 0
      rx55_csum_unnecessary: 0
      rx55_csum_unnecessary_inner: 0
      rx55_csum_none: 0
      rx55_xdp_drop: 0
      rx55_xdp_redirect: 0
      rx55_lro_packets: 0
      rx55_lro_bytes: 0
      rx55_ecn_mark: 0
      rx55_removed_vlan_packets: 0
      rx55_wqe_err: 0
      rx55_mpwqe_filler_cqes: 0
      rx55_mpwqe_filler_strides: 0
      rx55_buff_alloc_err: 0
      rx55_cqe_compress_blks: 0
      rx55_cqe_compress_pkts: 0
      rx55_page_reuse: 0
      rx55_cache_reuse: 0
      rx55_cache_full: 0
      rx55_cache_empty: 2560
      rx55_cache_busy: 0
      rx55_cache_waive: 0
      rx55_congst_umr: 0
      rx55_arfs_err: 0
      rx55_xdp_tx_xmit: 0
      rx55_xdp_tx_full: 0
      rx55_xdp_tx_err: 0
      rx55_xdp_tx_cqes: 0
      tx0_packets: 6019477917
      tx0_bytes: 3445238940825
      tx0_tso_packets: 311304622
      tx0_tso_bytes: 1897094773213
      tx0_tso_inner_packets: 0
      tx0_tso_inner_bytes: 0
      tx0_csum_partial: 457981794
      tx0_csum_partial_inner: 0
      tx0_added_vlan_packets: 4965567654
      tx0_nop: 72290329
      tx0_csum_none: 4507585860
      tx0_stopped: 9118
      tx0_dropped: 0
      tx0_xmit_more: 51651593
      tx0_recover: 0
      tx0_cqes: 4913918402
      tx0_wake: 9118
      tx0_cqe_err: 0
      tx1_packets: 5700413414
      tx1_bytes: 3340870662350
      tx1_tso_packets: 318201557
      tx1_tso_bytes: 1915233462303
      tx1_tso_inner_packets: 0
      tx1_tso_inner_bytes: 0
      tx1_csum_partial: 461736722
      tx1_csum_partial_inner: 0
      tx1_added_vlan_packets: 4638708749
      tx1_nop: 70061796
      tx1_csum_none: 4176972027
      tx1_stopped: 9248
      tx1_dropped: 0
      tx1_xmit_more: 39531959
      tx1_recover: 0
      tx1_cqes: 4599179178
      tx1_wake: 9248
      tx1_cqe_err: 0
      tx2_packets: 5795960848
      tx2_bytes: 3394876820271
      tx2_tso_packets: 322935065
      tx2_tso_bytes: 1910825901109
      tx2_tso_inner_packets: 0
      tx2_tso_inner_bytes: 0
      tx2_csum_partial: 460747092
      tx2_csum_partial_inner: 0
      tx2_added_vlan_packets: 4743705654
      tx2_nop: 72722430
      tx2_csum_none: 4282958562
      tx2_stopped: 8938
      tx2_dropped: 0
      tx2_xmit_more: 44084718
      tx2_recover: 0
      tx2_cqes: 4699623410
      tx2_wake: 8938
      tx2_cqe_err: 0
      tx3_packets: 5580215878
      tx3_bytes: 3191677257787
      tx3_tso_packets: 305771141
      tx3_tso_bytes: 1823265793476
      tx3_tso_inner_packets: 0
      tx3_tso_inner_bytes: 0
      tx3_csum_partial: 434976070
      tx3_csum_partial_inner: 0
      tx3_added_vlan_packets: 4569899956
      tx3_nop: 68184348
      tx3_csum_none: 4134923886
      tx3_stopped: 8383
      tx3_dropped: 0
      tx3_xmit_more: 41940375
      tx3_recover: 0
      tx3_cqes: 4527961924
      tx3_wake: 8383
      tx3_cqe_err: 0
      tx4_packets: 6795007068
      tx4_bytes: 3963890025270
      tx4_tso_packets: 358437617
      tx4_tso_bytes: 2154747995355
      tx4_tso_inner_packets: 0
      tx4_tso_inner_bytes: 0
      tx4_csum_partial: 504764524
      tx4_csum_partial_inner: 0
      tx4_added_vlan_packets: 5602510191
      tx4_nop: 81345604
      tx4_csum_none: 5097745667
      tx4_stopped: 10248
      tx4_dropped: 0
      tx4_xmit_more: 49068571
      tx4_recover: 0
      tx4_cqes: 5553444276
      tx4_wake: 10248
      tx4_cqe_err: 0
      tx5_packets: 6408089261
      tx5_bytes: 3676275848279
      tx5_tso_packets: 345129329
      tx5_tso_bytes: 2108447877473
      tx5_tso_inner_packets: 0
      tx5_tso_inner_bytes: 0
      tx5_csum_partial: 494705894
      tx5_csum_partial_inner: 0
      tx5_added_vlan_packets: 5235998343
      tx5_nop: 77694627
      tx5_csum_none: 4741292449
      tx5_stopped: 46
      tx5_dropped: 0
      tx5_xmit_more: 46675831
      tx5_recover: 0
      tx5_cqes: 5189323550
      tx5_wake: 46
      tx5_cqe_err: 0
      tx6_packets: 6382289663
      tx6_bytes: 3670991418150
      tx6_tso_packets: 342927826
      tx6_tso_bytes: 2075049679904
      tx6_tso_inner_packets: 0
      tx6_tso_inner_bytes: 0
      tx6_csum_partial: 490369221
      tx6_csum_partial_inner: 0
      tx6_added_vlan_packets: 5232144528
      tx6_nop: 77391246
      tx6_csum_none: 4741775307
      tx6_stopped: 10823
      tx6_dropped: 0
      tx6_xmit_more: 44487607
      tx6_recover: 0
      tx6_cqes: 5187659877
      tx6_wake: 10823
      tx6_cqe_err: 0
      tx7_packets: 6456378284
      tx7_bytes: 3758013320518
      tx7_tso_packets: 350958294
      tx7_tso_bytes: 2126833408524
      tx7_tso_inner_packets: 0
      tx7_tso_inner_bytes: 0
      tx7_csum_partial: 501804109
      tx7_csum_partial_inner: 0
      tx7_added_vlan_packets: 5275635204
      tx7_nop: 79010883
      tx7_csum_none: 4773831096
      tx7_stopped: 14684
      tx7_dropped: 0
      tx7_xmit_more: 44447469
      tx7_recover: 0
      tx7_cqes: 5231191770
      tx7_wake: 14684
      tx7_cqe_err: 0
      tx8_packets: 6401799768
      tx8_bytes: 3681210808766
      tx8_tso_packets: 342878228
      tx8_tso_bytes: 2089688012191
      tx8_tso_inner_packets: 0
      tx8_tso_inner_bytes: 0
      tx8_csum_partial: 494865145
      tx8_csum_partial_inner: 0
      tx8_added_vlan_packets: 5242288908
      tx8_nop: 77250910
      tx8_csum_none: 4747423763
      tx8_stopped: 2
      tx8_dropped: 0
      tx8_xmit_more: 44191737
      tx8_recover: 0
      tx8_cqes: 5198098454
      tx8_wake: 2
      tx8_cqe_err: 0
      tx9_packets: 6632882888
      tx9_bytes: 3820110338309
      tx9_tso_packets: 354189056
      tx9_tso_bytes: 2187883597128
      tx9_tso_inner_packets: 0
      tx9_tso_inner_bytes: 0
      tx9_csum_partial: 511108218
      tx9_csum_partial_inner: 0
      tx9_added_vlan_packets: 5413836353
      tx9_nop: 80560668
      tx9_csum_none: 4902728135
      tx9_stopped: 9091
      tx9_dropped: 0
      tx9_xmit_more: 54501293
      tx9_recover: 0
      tx9_cqes: 5359337638
      tx9_wake: 9091
      tx9_cqe_err: 0
      tx10_packets: 6421786406
      tx10_bytes: 3692798413429
      tx10_tso_packets: 346878943
      tx10_tso_bytes: 2111921062110
      tx10_tso_inner_packets: 0
      tx10_tso_inner_bytes: 0
      tx10_csum_partial: 494356645
      tx10_csum_partial_inner: 0
      tx10_added_vlan_packets: 5248274374
      tx10_nop: 77922624
      tx10_csum_none: 4753917730
      tx10_stopped: 9617
      tx10_dropped: 0
      tx10_xmit_more: 44473939
      tx10_recover: 0
      tx10_cqes: 5203802547
      tx10_wake: 9617
      tx10_cqe_err: 0
      tx11_packets: 6406750938
      tx11_bytes: 3660343565126
      tx11_tso_packets: 355917271
      tx11_tso_bytes: 2130812246956
      tx11_tso_inner_packets: 0
      tx11_tso_inner_bytes: 0
      tx11_csum_partial: 500336369
      tx11_csum_partial_inner: 0
      tx11_added_vlan_packets: 5228267547
      tx11_nop: 78906315
      tx11_csum_none: 4727931178
      tx11_stopped: 9607
      tx11_dropped: 0
      tx11_xmit_more: 40041492
      tx11_recover: 0
      tx11_cqes: 5188228290
      tx11_wake: 9607
      tx11_cqe_err: 0
      tx12_packets: 6422347846
      tx12_bytes: 3718772753227
      tx12_tso_packets: 355397223
      tx12_tso_bytes: 2162614059758
      tx12_tso_inner_packets: 0
      tx12_tso_inner_bytes: 0
      tx12_csum_partial: 511437844
      tx12_csum_partial_inner: 0
      tx12_added_vlan_packets: 5221373746
      tx12_nop: 78866779
      tx12_csum_none: 4709935902
      tx12_stopped: 10280
      tx12_dropped: 0
      tx12_xmit_more: 42189399
      tx12_recover: 0
      tx12_cqes: 5179187154
      tx12_wake: 10280
      tx12_cqe_err: 0
      tx13_packets: 6429383816
      tx13_bytes: 3725679445046
      tx13_tso_packets: 360934759
      tx13_tso_bytes: 2148016411436
      tx13_tso_inner_packets: 0
      tx13_tso_inner_bytes: 0
      tx13_csum_partial: 505245849
      tx13_csum_partial_inner: 0
      tx13_added_vlan_packets: 5240267441
      tx13_nop: 80295637
      tx13_csum_none: 4735021592
      tx13_stopped: 84
      tx13_dropped: 0
      tx13_xmit_more: 43118045
      tx13_recover: 0
      tx13_cqes: 5197150348
      tx13_wake: 84
      tx13_cqe_err: 0
      tx14_packets: 6375279148
      tx14_bytes: 3624267203336
      tx14_tso_packets: 344388148
      tx14_tso_bytes: 2094966273548
      tx14_tso_inner_packets: 0
      tx14_tso_inner_bytes: 0
      tx14_csum_partial: 494129407
      tx14_csum_partial_inner: 0
      tx14_added_vlan_packets: 5210749337
      tx14_nop: 77280615
      tx14_csum_none: 4716619930
      tx14_stopped: 13057
      tx14_dropped: 0
      tx14_xmit_more: 40849682
      tx14_recover: 0
      tx14_cqes: 5169902694
      tx14_wake: 13057
      tx14_cqe_err: 0
      tx15_packets: 6489306520
      tx15_bytes: 3775716194795
      tx15_tso_packets: 368716406
      tx15_tso_bytes: 2165876423354
      tx15_tso_inner_packets: 0
      tx15_tso_inner_bytes: 0
      tx15_csum_partial: 509887864
      tx15_csum_partial_inner: 0
      tx15_added_vlan_packets: 5296767390
      tx15_nop: 80803468
      tx15_csum_none: 4786879529
      tx15_stopped: 1
      tx15_dropped: 0
      tx15_xmit_more: 46979676
      tx15_recover: 0
      tx15_cqes: 5249789328
      tx15_wake: 1
      tx15_cqe_err: 0
      tx16_packets: 6559857761
      tx16_bytes: 3724080573905
      tx16_tso_packets: 350864176
      tx16_tso_bytes: 2099634006033
      tx16_tso_inner_packets: 0
      tx16_tso_inner_bytes: 0
      tx16_csum_partial: 489397232
      tx16_csum_partial_inner: 0
      tx16_added_vlan_packets: 5398869334
      tx16_nop: 79046075
      tx16_csum_none: 4909472106
      tx16_stopped: 4480
      tx16_dropped: 0
      tx16_xmit_more: 47273286
      tx16_recover: 0
      tx16_cqes: 5351598315
      tx16_wake: 4480
      tx16_cqe_err: 0
      tx17_packets: 6358711533
      tx17_bytes: 3650180865573
      tx17_tso_packets: 350723136
      tx17_tso_bytes: 2109426587128
      tx17_tso_inner_packets: 0
      tx17_tso_inner_bytes: 0
      tx17_csum_partial: 494719487
      tx17_csum_partial_inner: 0
      tx17_added_vlan_packets: 5190068796
      tx17_nop: 77285612
      tx17_csum_none: 4695349309
      tx17_stopped: 10443
      tx17_dropped: 0
      tx17_xmit_more: 45582108
      tx17_recover: 0
      tx17_cqes: 5144489363
      tx17_wake: 10443
      tx17_cqe_err: 0
      tx18_packets: 6655328437
      tx18_bytes: 3801768461807
      tx18_tso_packets: 356516373
      tx18_tso_bytes: 2164829247550
      tx18_tso_inner_packets: 0
      tx18_tso_inner_bytes: 0
      tx18_csum_partial: 500508446
      tx18_csum_partial_inner: 0
      tx18_added_vlan_packets: 5454166840
      tx18_nop: 80423007
      tx18_csum_none: 4953658394
      tx18_stopped: 14760
      tx18_dropped: 0
      tx18_xmit_more: 50837465
      tx18_recover: 0
      tx18_cqes: 5403332553
      tx18_wake: 14760
      tx18_cqe_err: 0
      tx19_packets: 6408680611
      tx19_bytes: 3644119934372
      tx19_tso_packets: 350727530
      tx19_tso_bytes: 2089896715365
      tx19_tso_inner_packets: 0
      tx19_tso_inner_bytes: 0
      tx19_csum_partial: 486536490
      tx19_csum_partial_inner: 0
      tx19_added_vlan_packets: 5255839020
      tx19_nop: 78525198
      tx19_csum_none: 4769302530
      tx19_stopped: 8614
      tx19_dropped: 0
      tx19_xmit_more: 43605232
      tx19_recover: 0
      tx19_cqes: 5212236833
      tx19_wake: 8614
      tx19_cqe_err: 0
      tx20_packets: 5609275141
      tx20_bytes: 3187279031581
      tx20_tso_packets: 298609303
      tx20_tso_bytes: 1794382229379
      tx20_tso_inner_packets: 0
      tx20_tso_inner_bytes: 0
      tx20_csum_partial: 430691178
      tx20_csum_partial_inner: 0
      tx20_added_vlan_packets: 4616844286
      tx20_nop: 67450040
      tx20_csum_none: 4186153108
      tx20_stopped: 9099
      tx20_dropped: 0
      tx20_xmit_more: 42040991
      tx20_recover: 0
      tx20_cqes: 4574805846
      tx20_wake: 9099
      tx20_cqe_err: 0
      tx21_packets: 5641621183
      tx21_bytes: 3279282331124
      tx21_tso_packets: 311297057
      tx21_tso_bytes: 1875735401012
      tx21_tso_inner_packets: 0
      tx21_tso_inner_bytes: 0
      tx21_csum_partial: 444333894
      tx21_csum_partial_inner: 0
      tx21_added_vlan_packets: 4603527701
      tx21_nop: 68857983
      tx21_csum_none: 4159193807
      tx21_stopped: 10082
      tx21_dropped: 0
      tx21_xmit_more: 43988081
      tx21_recover: 0
      tx21_cqes: 4559542410
      tx21_wake: 10082
      tx21_cqe_err: 0
      tx22_packets: 5822168288
      tx22_bytes: 3452026726862
      tx22_tso_packets: 308230791
      tx22_tso_bytes: 1859686450671
      tx22_tso_inner_packets: 0
      tx22_tso_inner_bytes: 0
      tx22_csum_partial: 442751518
      tx22_csum_partial_inner: 0
      tx22_added_vlan_packets: 4792100335
      tx22_nop: 70631706
      tx22_csum_none: 4349348817
      tx22_stopped: 9355
      tx22_dropped: 0
      tx22_xmit_more: 45165994
      tx22_recover: 0
      tx22_cqes: 4746936601
      tx22_wake: 9355
      tx22_cqe_err: 0
      tx23_packets: 5664896066
      tx23_bytes: 3207724186946
      tx23_tso_packets: 300418757
      tx23_tso_bytes: 1794180478679
      tx23_tso_inner_packets: 0
      tx23_tso_inner_bytes: 0
      tx23_csum_partial: 429898848
      tx23_csum_partial_inner: 0
      tx23_added_vlan_packets: 4674317320
      tx23_nop: 67899896
      tx23_csum_none: 4244418472
      tx23_stopped: 11684
      tx23_dropped: 0
      tx23_xmit_more: 43351132
      tx23_recover: 0
      tx23_cqes: 4630969028
      tx23_wake: 11684
      tx23_cqe_err: 0
      tx24_packets: 5663326601
      tx24_bytes: 3250127095110
      tx24_tso_packets: 301327422
      tx24_tso_bytes: 1831260534157
      tx24_tso_inner_packets: 0
      tx24_tso_inner_bytes: 0
      tx24_csum_partial: 438757312
      tx24_csum_partial_inner: 0
      tx24_added_vlan_packets: 4646014986
      tx24_nop: 68431153
      tx24_csum_none: 4207257674
      tx24_stopped: 9240
      tx24_dropped: 0
      tx24_xmit_more: 47699542
      tx24_recover: 0
      tx24_cqes: 4598317913
      tx24_wake: 9240
      tx24_cqe_err: 0
      tx25_packets: 5703883962
      tx25_bytes: 3291856915695
      tx25_tso_packets: 308900318
      tx25_tso_bytes: 1855516128386
      tx25_tso_inner_packets: 0
      tx25_tso_inner_bytes: 0
      tx25_csum_partial: 444753744
      tx25_csum_partial_inner: 0
      tx25_added_vlan_packets: 4676528924
      tx25_nop: 69230967
      tx25_csum_none: 4231775180
      tx25_stopped: 1140
      tx25_dropped: 0
      tx25_xmit_more: 40819195
      tx25_recover: 0
      tx25_cqes: 4635710966
      tx25_wake: 1140
      tx25_cqe_err: 0
      tx26_packets: 5803495984
      tx26_bytes: 3413564272139
      tx26_tso_packets: 319986230
      tx26_tso_bytes: 1929042839677
      tx26_tso_inner_packets: 0
      tx26_tso_inner_bytes: 0
      tx26_csum_partial: 464771163
      tx26_csum_partial_inner: 0
      tx26_added_vlan_packets: 4734767280
      tx26_nop: 71345080
      tx26_csum_none: 4269996117
      tx26_stopped: 10972
      tx26_dropped: 0
      tx26_xmit_more: 43793424
      tx26_recover: 0
      tx26_cqes: 4690976400
      tx26_wake: 10972
      tx26_cqe_err: 0
      tx27_packets: 5960955343
      tx27_bytes: 3444156164526
      tx27_tso_packets: 325099639
      tx27_tso_bytes: 1928378678784
      tx27_tso_inner_packets: 0
      tx27_tso_inner_bytes: 0
      tx27_csum_partial: 467310289
      tx27_csum_partial_inner: 0
      tx27_added_vlan_packets: 4888651368
      tx27_nop: 73201664
      tx27_csum_none: 4421341079
      tx27_stopped: 9465
      tx27_dropped: 0
      tx27_xmit_more: 53632121
      tx27_recover: 0
      tx27_cqes: 4835021398
      tx27_wake: 9465
      tx27_cqe_err: 0
      tx28_packets: 0
      tx28_bytes: 0
      tx28_tso_packets: 0
      tx28_tso_bytes: 0
      tx28_tso_inner_packets: 0
      tx28_tso_inner_bytes: 0
      tx28_csum_partial: 0
      tx28_csum_partial_inner: 0
      tx28_added_vlan_packets: 0
      tx28_nop: 0
      tx28_csum_none: 0
      tx28_stopped: 0
      tx28_dropped: 0
      tx28_xmit_more: 0
      tx28_recover: 0
      tx28_cqes: 0
      tx28_wake: 0
      tx28_cqe_err: 0
      tx29_packets: 3
      tx29_bytes: 266
      tx29_tso_packets: 0
      tx29_tso_bytes: 0
      tx29_tso_inner_packets: 0
      tx29_tso_inner_bytes: 0
      tx29_csum_partial: 0
      tx29_csum_partial_inner: 0
      tx29_added_vlan_packets: 0
      tx29_nop: 0
      tx29_csum_none: 3
      tx29_stopped: 0
      tx29_dropped: 0
      tx29_xmit_more: 1
      tx29_recover: 0
      tx29_cqes: 2
      tx29_wake: 0
      tx29_cqe_err: 0
      tx30_packets: 0
      tx30_bytes: 0
      tx30_tso_packets: 0
      tx30_tso_bytes: 0
      tx30_tso_inner_packets: 0
      tx30_tso_inner_bytes: 0
      tx30_csum_partial: 0
      tx30_csum_partial_inner: 0
      tx30_added_vlan_packets: 0
      tx30_nop: 0
      tx30_csum_none: 0
      tx30_stopped: 0
      tx30_dropped: 0
      tx30_xmit_more: 0
      tx30_recover: 0
      tx30_cqes: 0
      tx30_wake: 0
      tx30_cqe_err: 0
      tx31_packets: 0
      tx31_bytes: 0
      tx31_tso_packets: 0
      tx31_tso_bytes: 0
      tx31_tso_inner_packets: 0
      tx31_tso_inner_bytes: 0
      tx31_csum_partial: 0
      tx31_csum_partial_inner: 0
      tx31_added_vlan_packets: 0
      tx31_nop: 0
      tx31_csum_none: 0
      tx31_stopped: 0
      tx31_dropped: 0
      tx31_xmit_more: 0
      tx31_recover: 0
      tx31_cqes: 0
      tx31_wake: 0
      tx31_cqe_err: 0
      tx32_packets: 0
      tx32_bytes: 0
      tx32_tso_packets: 0
      tx32_tso_bytes: 0
      tx32_tso_inner_packets: 0
      tx32_tso_inner_bytes: 0
      tx32_csum_partial: 0
      tx32_csum_partial_inner: 0
      tx32_added_vlan_packets: 0
      tx32_nop: 0
      tx32_csum_none: 0
      tx32_stopped: 0
      tx32_dropped: 0
      tx32_xmit_more: 0
      tx32_recover: 0
      tx32_cqes: 0
      tx32_wake: 0
      tx32_cqe_err: 0
      tx33_packets: 0
      tx33_bytes: 0
      tx33_tso_packets: 0
      tx33_tso_bytes: 0
      tx33_tso_inner_packets: 0
      tx33_tso_inner_bytes: 0
      tx33_csum_partial: 0
      tx33_csum_partial_inner: 0
      tx33_added_vlan_packets: 0
      tx33_nop: 0
      tx33_csum_none: 0
      tx33_stopped: 0
      tx33_dropped: 0
      tx33_xmit_more: 0
      tx33_recover: 0
      tx33_cqes: 0
      tx33_wake: 0
      tx33_cqe_err: 0
      tx34_packets: 0
      tx34_bytes: 0
      tx34_tso_packets: 0
      tx34_tso_bytes: 0
      tx34_tso_inner_packets: 0
      tx34_tso_inner_bytes: 0
      tx34_csum_partial: 0
      tx34_csum_partial_inner: 0
      tx34_added_vlan_packets: 0
      tx34_nop: 0
      tx34_csum_none: 0
      tx34_stopped: 0
      tx34_dropped: 0
      tx34_xmit_more: 0
      tx34_recover: 0
      tx34_cqes: 0
      tx34_wake: 0
      tx34_cqe_err: 0
      tx35_packets: 0
      tx35_bytes: 0
      tx35_tso_packets: 0
      tx35_tso_bytes: 0
      tx35_tso_inner_packets: 0
      tx35_tso_inner_bytes: 0
      tx35_csum_partial: 0
      tx35_csum_partial_inner: 0
      tx35_added_vlan_packets: 0
      tx35_nop: 0
      tx35_csum_none: 0
      tx35_stopped: 0
      tx35_dropped: 0
      tx35_xmit_more: 0
      tx35_recover: 0
      tx35_cqes: 0
      tx35_wake: 0
      tx35_cqe_err: 0
      tx36_packets: 0
      tx36_bytes: 0
      tx36_tso_packets: 0
      tx36_tso_bytes: 0
      tx36_tso_inner_packets: 0
      tx36_tso_inner_bytes: 0
      tx36_csum_partial: 0
      tx36_csum_partial_inner: 0
      tx36_added_vlan_packets: 0
      tx36_nop: 0
      tx36_csum_none: 0
      tx36_stopped: 0
      tx36_dropped: 0
      tx36_xmit_more: 0
      tx36_recover: 0
      tx36_cqes: 0
      tx36_wake: 0
      tx36_cqe_err: 0
      tx37_packets: 0
      tx37_bytes: 0
      tx37_tso_packets: 0
      tx37_tso_bytes: 0
      tx37_tso_inner_packets: 0
      tx37_tso_inner_bytes: 0
      tx37_csum_partial: 0
      tx37_csum_partial_inner: 0
      tx37_added_vlan_packets: 0
      tx37_nop: 0
      tx37_csum_none: 0
      tx37_stopped: 0
      tx37_dropped: 0
      tx37_xmit_more: 0
      tx37_recover: 0
      tx37_cqes: 0
      tx37_wake: 0
      tx37_cqe_err: 0
      tx38_packets: 0
      tx38_bytes: 0
      tx38_tso_packets: 0
      tx38_tso_bytes: 0
      tx38_tso_inner_packets: 0
      tx38_tso_inner_bytes: 0
      tx38_csum_partial: 0
      tx38_csum_partial_inner: 0
      tx38_added_vlan_packets: 0
      tx38_nop: 0
      tx38_csum_none: 0
      tx38_stopped: 0
      tx38_dropped: 0
      tx38_xmit_more: 0
      tx38_recover: 0
      tx38_cqes: 0
      tx38_wake: 0
      tx38_cqe_err: 0
      tx39_packets: 0
      tx39_bytes: 0
      tx39_tso_packets: 0
      tx39_tso_bytes: 0
      tx39_tso_inner_packets: 0
      tx39_tso_inner_bytes: 0
      tx39_csum_partial: 0
      tx39_csum_partial_inner: 0
      tx39_added_vlan_packets: 0
      tx39_nop: 0
      tx39_csum_none: 0
      tx39_stopped: 0
      tx39_dropped: 0
      tx39_xmit_more: 0
      tx39_recover: 0
      tx39_cqes: 0
      tx39_wake: 0
      tx39_cqe_err: 0
      tx40_packets: 0
      tx40_bytes: 0
      tx40_tso_packets: 0
      tx40_tso_bytes: 0
      tx40_tso_inner_packets: 0
      tx40_tso_inner_bytes: 0
      tx40_csum_partial: 0
      tx40_csum_partial_inner: 0
      tx40_added_vlan_packets: 0
      tx40_nop: 0
      tx40_csum_none: 0
      tx40_stopped: 0
      tx40_dropped: 0
      tx40_xmit_more: 0
      tx40_recover: 0
      tx40_cqes: 0
      tx40_wake: 0
      tx40_cqe_err: 0
      tx41_packets: 0
      tx41_bytes: 0
      tx41_tso_packets: 0
      tx41_tso_bytes: 0
      tx41_tso_inner_packets: 0
      tx41_tso_inner_bytes: 0
      tx41_csum_partial: 0
      tx41_csum_partial_inner: 0
      tx41_added_vlan_packets: 0
      tx41_nop: 0
      tx41_csum_none: 0
      tx41_stopped: 0
      tx41_dropped: 0
      tx41_xmit_more: 0
      tx41_recover: 0
      tx41_cqes: 0
      tx41_wake: 0
      tx41_cqe_err: 0
      tx42_packets: 0
      tx42_bytes: 0
      tx42_tso_packets: 0
      tx42_tso_bytes: 0
      tx42_tso_inner_packets: 0
      tx42_tso_inner_bytes: 0
      tx42_csum_partial: 0
      tx42_csum_partial_inner: 0
      tx42_added_vlan_packets: 0
      tx42_nop: 0
      tx42_csum_none: 0
      tx42_stopped: 0
      tx42_dropped: 0
      tx42_xmit_more: 0
      tx42_recover: 0
      tx42_cqes: 0
      tx42_wake: 0
      tx42_cqe_err: 0
      tx43_packets: 0
      tx43_bytes: 0
      tx43_tso_packets: 0
      tx43_tso_bytes: 0
      tx43_tso_inner_packets: 0
      tx43_tso_inner_bytes: 0
      tx43_csum_partial: 0
      tx43_csum_partial_inner: 0
      tx43_added_vlan_packets: 0
      tx43_nop: 0
      tx43_csum_none: 0
      tx43_stopped: 0
      tx43_dropped: 0
      tx43_xmit_more: 0
      tx43_recover: 0
      tx43_cqes: 0
      tx43_wake: 0
      tx43_cqe_err: 0
      tx44_packets: 0
      tx44_bytes: 0
      tx44_tso_packets: 0
      tx44_tso_bytes: 0
      tx44_tso_inner_packets: 0
      tx44_tso_inner_bytes: 0
      tx44_csum_partial: 0
      tx44_csum_partial_inner: 0
      tx44_added_vlan_packets: 0
      tx44_nop: 0
      tx44_csum_none: 0
      tx44_stopped: 0
      tx44_dropped: 0
      tx44_xmit_more: 0
      tx44_recover: 0
      tx44_cqes: 0
      tx44_wake: 0
      tx44_cqe_err: 0
      tx45_packets: 0
      tx45_bytes: 0
      tx45_tso_packets: 0
      tx45_tso_bytes: 0
      tx45_tso_inner_packets: 0
      tx45_tso_inner_bytes: 0
      tx45_csum_partial: 0
      tx45_csum_partial_inner: 0
      tx45_added_vlan_packets: 0
      tx45_nop: 0
      tx45_csum_none: 0
      tx45_stopped: 0
      tx45_dropped: 0
      tx45_xmit_more: 0
      tx45_recover: 0
      tx45_cqes: 0
      tx45_wake: 0
      tx45_cqe_err: 0
      tx46_packets: 0
      tx46_bytes: 0
      tx46_tso_packets: 0
      tx46_tso_bytes: 0
      tx46_tso_inner_packets: 0
      tx46_tso_inner_bytes: 0
      tx46_csum_partial: 0
      tx46_csum_partial_inner: 0
      tx46_added_vlan_packets: 0
      tx46_nop: 0
      tx46_csum_none: 0
      tx46_stopped: 0
      tx46_dropped: 0
      tx46_xmit_more: 0
      tx46_recover: 0
      tx46_cqes: 0
      tx46_wake: 0
      tx46_cqe_err: 0
      tx47_packets: 0
      tx47_bytes: 0
      tx47_tso_packets: 0
      tx47_tso_bytes: 0
      tx47_tso_inner_packets: 0
      tx47_tso_inner_bytes: 0
      tx47_csum_partial: 0
      tx47_csum_partial_inner: 0
      tx47_added_vlan_packets: 0
      tx47_nop: 0
      tx47_csum_none: 0
      tx47_stopped: 0
      tx47_dropped: 0
      tx47_xmit_more: 0
      tx47_recover: 0
      tx47_cqes: 0
      tx47_wake: 0
      tx47_cqe_err: 0
      tx48_packets: 0
      tx48_bytes: 0
      tx48_tso_packets: 0
      tx48_tso_bytes: 0
      tx48_tso_inner_packets: 0
      tx48_tso_inner_bytes: 0
      tx48_csum_partial: 0
      tx48_csum_partial_inner: 0
      tx48_added_vlan_packets: 0
      tx48_nop: 0
      tx48_csum_none: 0
      tx48_stopped: 0
      tx48_dropped: 0
      tx48_xmit_more: 0
      tx48_recover: 0
      tx48_cqes: 0
      tx48_wake: 0
      tx48_cqe_err: 0
      tx49_packets: 0
      tx49_bytes: 0
      tx49_tso_packets: 0
      tx49_tso_bytes: 0
      tx49_tso_inner_packets: 0
      tx49_tso_inner_bytes: 0
      tx49_csum_partial: 0
      tx49_csum_partial_inner: 0
      tx49_added_vlan_packets: 0
      tx49_nop: 0
      tx49_csum_none: 0
      tx49_stopped: 0
      tx49_dropped: 0
      tx49_xmit_more: 0
      tx49_recover: 0
      tx49_cqes: 0
      tx49_wake: 0
      tx49_cqe_err: 0
      tx50_packets: 0
      tx50_bytes: 0
      tx50_tso_packets: 0
      tx50_tso_bytes: 0
      tx50_tso_inner_packets: 0
      tx50_tso_inner_bytes: 0
      tx50_csum_partial: 0
      tx50_csum_partial_inner: 0
      tx50_added_vlan_packets: 0
      tx50_nop: 0
      tx50_csum_none: 0
      tx50_stopped: 0
      tx50_dropped: 0
      tx50_xmit_more: 0
      tx50_recover: 0
      tx50_cqes: 0
      tx50_wake: 0
      tx50_cqe_err: 0
      tx51_packets: 0
      tx51_bytes: 0
      tx51_tso_packets: 0
      tx51_tso_bytes: 0
      tx51_tso_inner_packets: 0
      tx51_tso_inner_bytes: 0
      tx51_csum_partial: 0
      tx51_csum_partial_inner: 0
      tx51_added_vlan_packets: 0
      tx51_nop: 0
      tx51_csum_none: 0
      tx51_stopped: 0
      tx51_dropped: 0
      tx51_xmit_more: 0
      tx51_recover: 0
      tx51_cqes: 0
      tx51_wake: 0
      tx51_cqe_err: 0
      tx52_packets: 0
      tx52_bytes: 0
      tx52_tso_packets: 0
      tx52_tso_bytes: 0
      tx52_tso_inner_packets: 0
      tx52_tso_inner_bytes: 0
      tx52_csum_partial: 0
      tx52_csum_partial_inner: 0
      tx52_added_vlan_packets: 0
      tx52_nop: 0
      tx52_csum_none: 0
      tx52_stopped: 0
      tx52_dropped: 0
      tx52_xmit_more: 0
      tx52_recover: 0
      tx52_cqes: 0
      tx52_wake: 0
      tx52_cqe_err: 0
      tx53_packets: 0
      tx53_bytes: 0
      tx53_tso_packets: 0
      tx53_tso_bytes: 0
      tx53_tso_inner_packets: 0
      tx53_tso_inner_bytes: 0
      tx53_csum_partial: 0
      tx53_csum_partial_inner: 0
      tx53_added_vlan_packets: 0
      tx53_nop: 0
      tx53_csum_none: 0
      tx53_stopped: 0
      tx53_dropped: 0
      tx53_xmit_more: 0
      tx53_recover: 0
      tx53_cqes: 0
      tx53_wake: 0
      tx53_cqe_err: 0
      tx54_packets: 0
      tx54_bytes: 0
      tx54_tso_packets: 0
      tx54_tso_bytes: 0
      tx54_tso_inner_packets: 0
      tx54_tso_inner_bytes: 0
      tx54_csum_partial: 0
      tx54_csum_partial_inner: 0
      tx54_added_vlan_packets: 0
      tx54_nop: 0
      tx54_csum_none: 0
      tx54_stopped: 0
      tx54_dropped: 0
      tx54_xmit_more: 0
      tx54_recover: 0
      tx54_cqes: 0
      tx54_wake: 0
      tx54_cqe_err: 0
      tx55_packets: 0
      tx55_bytes: 0
      tx55_tso_packets: 0
      tx55_tso_bytes: 0
      tx55_tso_inner_packets: 0
      tx55_tso_inner_bytes: 0
      tx55_csum_partial: 0
      tx55_csum_partial_inner: 0
      tx55_added_vlan_packets: 0
      tx55_nop: 0
      tx55_csum_none: 0
      tx55_stopped: 0
      tx55_dropped: 0
      tx55_xmit_more: 0
      tx55_recover: 0
      tx55_cqes: 0
      tx55_wake: 0
      tx55_cqe_err: 0
      tx0_xdp_xmit: 0
      tx0_xdp_full: 0
      tx0_xdp_err: 0
      tx0_xdp_cqes: 0
      tx1_xdp_xmit: 0
      tx1_xdp_full: 0
      tx1_xdp_err: 0
      tx1_xdp_cqes: 0
      tx2_xdp_xmit: 0
      tx2_xdp_full: 0
      tx2_xdp_err: 0
      tx2_xdp_cqes: 0
      tx3_xdp_xmit: 0
      tx3_xdp_full: 0
      tx3_xdp_err: 0
      tx3_xdp_cqes: 0
      tx4_xdp_xmit: 0
      tx4_xdp_full: 0
      tx4_xdp_err: 0
      tx4_xdp_cqes: 0
      tx5_xdp_xmit: 0
      tx5_xdp_full: 0
      tx5_xdp_err: 0
      tx5_xdp_cqes: 0
      tx6_xdp_xmit: 0
      tx6_xdp_full: 0
      tx6_xdp_err: 0
      tx6_xdp_cqes: 0
      tx7_xdp_xmit: 0
      tx7_xdp_full: 0
      tx7_xdp_err: 0
      tx7_xdp_cqes: 0
      tx8_xdp_xmit: 0
      tx8_xdp_full: 0
      tx8_xdp_err: 0
      tx8_xdp_cqes: 0
      tx9_xdp_xmit: 0
      tx9_xdp_full: 0
      tx9_xdp_err: 0
      tx9_xdp_cqes: 0
      tx10_xdp_xmit: 0
      tx10_xdp_full: 0
      tx10_xdp_err: 0
      tx10_xdp_cqes: 0
      tx11_xdp_xmit: 0
      tx11_xdp_full: 0
      tx11_xdp_err: 0
      tx11_xdp_cqes: 0
      tx12_xdp_xmit: 0
      tx12_xdp_full: 0
      tx12_xdp_err: 0
      tx12_xdp_cqes: 0
      tx13_xdp_xmit: 0
      tx13_xdp_full: 0
      tx13_xdp_err: 0
      tx13_xdp_cqes: 0
      tx14_xdp_xmit: 0
      tx14_xdp_full: 0
      tx14_xdp_err: 0
      tx14_xdp_cqes: 0
      tx15_xdp_xmit: 0
      tx15_xdp_full: 0
      tx15_xdp_err: 0
      tx15_xdp_cqes: 0
      tx16_xdp_xmit: 0
      tx16_xdp_full: 0
      tx16_xdp_err: 0
      tx16_xdp_cqes: 0
      tx17_xdp_xmit: 0
      tx17_xdp_full: 0
      tx17_xdp_err: 0
      tx17_xdp_cqes: 0
      tx18_xdp_xmit: 0
      tx18_xdp_full: 0
      tx18_xdp_err: 0
      tx18_xdp_cqes: 0
      tx19_xdp_xmit: 0
      tx19_xdp_full: 0
      tx19_xdp_err: 0
      tx19_xdp_cqes: 0
      tx20_xdp_xmit: 0
      tx20_xdp_full: 0
      tx20_xdp_err: 0
      tx20_xdp_cqes: 0
      tx21_xdp_xmit: 0
      tx21_xdp_full: 0
      tx21_xdp_err: 0
      tx21_xdp_cqes: 0
      tx22_xdp_xmit: 0
      tx22_xdp_full: 0
      tx22_xdp_err: 0
      tx22_xdp_cqes: 0
      tx23_xdp_xmit: 0
      tx23_xdp_full: 0
      tx23_xdp_err: 0
      tx23_xdp_cqes: 0
      tx24_xdp_xmit: 0
      tx24_xdp_full: 0
      tx24_xdp_err: 0
      tx24_xdp_cqes: 0
      tx25_xdp_xmit: 0
      tx25_xdp_full: 0
      tx25_xdp_err: 0
      tx25_xdp_cqes: 0
      tx26_xdp_xmit: 0
      tx26_xdp_full: 0
      tx26_xdp_err: 0
      tx26_xdp_cqes: 0
      tx27_xdp_xmit: 0
      tx27_xdp_full: 0
      tx27_xdp_err: 0
      tx27_xdp_cqes: 0
      tx28_xdp_xmit: 0
      tx28_xdp_full: 0
      tx28_xdp_err: 0
      tx28_xdp_cqes: 0
      tx29_xdp_xmit: 0
      tx29_xdp_full: 0
      tx29_xdp_err: 0
      tx29_xdp_cqes: 0
      tx30_xdp_xmit: 0
      tx30_xdp_full: 0
      tx30_xdp_err: 0
      tx30_xdp_cqes: 0
      tx31_xdp_xmit: 0
      tx31_xdp_full: 0
      tx31_xdp_err: 0
      tx31_xdp_cqes: 0
      tx32_xdp_xmit: 0
      tx32_xdp_full: 0
      tx32_xdp_err: 0
      tx32_xdp_cqes: 0
      tx33_xdp_xmit: 0
      tx33_xdp_full: 0
      tx33_xdp_err: 0
      tx33_xdp_cqes: 0
      tx34_xdp_xmit: 0
      tx34_xdp_full: 0
      tx34_xdp_err: 0
      tx34_xdp_cqes: 0
      tx35_xdp_xmit: 0
      tx35_xdp_full: 0
      tx35_xdp_err: 0
      tx35_xdp_cqes: 0
      tx36_xdp_xmit: 0
      tx36_xdp_full: 0
      tx36_xdp_err: 0
      tx36_xdp_cqes: 0
      tx37_xdp_xmit: 0
      tx37_xdp_full: 0
      tx37_xdp_err: 0
      tx37_xdp_cqes: 0
      tx38_xdp_xmit: 0
      tx38_xdp_full: 0
      tx38_xdp_err: 0
      tx38_xdp_cqes: 0
      tx39_xdp_xmit: 0
      tx39_xdp_full: 0
      tx39_xdp_err: 0
      tx39_xdp_cqes: 0
      tx40_xdp_xmit: 0
      tx40_xdp_full: 0
      tx40_xdp_err: 0
      tx40_xdp_cqes: 0
      tx41_xdp_xmit: 0
      tx41_xdp_full: 0
      tx41_xdp_err: 0
      tx41_xdp_cqes: 0
      tx42_xdp_xmit: 0
      tx42_xdp_full: 0
      tx42_xdp_err: 0
      tx42_xdp_cqes: 0
      tx43_xdp_xmit: 0
      tx43_xdp_full: 0
      tx43_xdp_err: 0
      tx43_xdp_cqes: 0
      tx44_xdp_xmit: 0
      tx44_xdp_full: 0
      tx44_xdp_err: 0
      tx44_xdp_cqes: 0
      tx45_xdp_xmit: 0
      tx45_xdp_full: 0
      tx45_xdp_err: 0
      tx45_xdp_cqes: 0
      tx46_xdp_xmit: 0
      tx46_xdp_full: 0
      tx46_xdp_err: 0
      tx46_xdp_cqes: 0
      tx47_xdp_xmit: 0
      tx47_xdp_full: 0
      tx47_xdp_err: 0
      tx47_xdp_cqes: 0
      tx48_xdp_xmit: 0
      tx48_xdp_full: 0
      tx48_xdp_err: 0
      tx48_xdp_cqes: 0
      tx49_xdp_xmit: 0
      tx49_xdp_full: 0
      tx49_xdp_err: 0
      tx49_xdp_cqes: 0
      tx50_xdp_xmit: 0
      tx50_xdp_full: 0
      tx50_xdp_err: 0
      tx50_xdp_cqes: 0
      tx51_xdp_xmit: 0
      tx51_xdp_full: 0
      tx51_xdp_err: 0
      tx51_xdp_cqes: 0
      tx52_xdp_xmit: 0
      tx52_xdp_full: 0
      tx52_xdp_err: 0
      tx52_xdp_cqes: 0
      tx53_xdp_xmit: 0
      tx53_xdp_full: 0
      tx53_xdp_err: 0
      tx53_xdp_cqes: 0
      tx54_xdp_xmit: 0
      tx54_xdp_full: 0
      tx54_xdp_err: 0
      tx54_xdp_cqes: 0
      tx55_xdp_xmit: 0
      tx55_xdp_full: 0
      tx55_xdp_err: 0
      tx55_xdp_cqes: 0


mpstat -P ALL 1 10
Average:     CPU    %usr   %nice    %sys %iowait    %irq   %soft %steal  
%guest  %gnice   %idle
Average:     all    0.04    0.00    6.94    0.02    0.00 32.00    
0.00    0.00    0.00   61.00
Average:       0    0.00    0.00    1.20    0.00    0.00 0.00    0.00    
0.00    0.00   98.80
Average:       1    0.00    0.00    2.30    0.00    0.00 0.00    0.00    
0.00    0.00   97.70
Average:       2    0.10    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00   99.90
Average:       3    0.10    0.00    1.50    0.00    0.00 0.00    0.00    
0.00    0.00   98.40
Average:       4    0.50    0.00    2.50    0.00    0.00 0.00    0.00    
0.00    0.00   97.00
Average:       5    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:       6    0.90    0.00   10.20    0.00    0.00 0.00    0.00    
0.00    0.00   88.90
Average:       7    0.00    0.00    0.00    1.40    0.00 0.00    0.00    
0.00    0.00   98.60
Average:       8    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:       9    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      10    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      11    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      12    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      13    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      14    0.00    0.00   12.99    0.00    0.00 62.64    
0.00    0.00    0.00   24.38
Average:      15    0.00    0.00   12.70    0.00    0.00 63.40    
0.00    0.00    0.00   23.90
Average:      16    0.00    0.00   11.20    0.00    0.00 66.40    
0.00    0.00    0.00   22.40
Average:      17    0.00    0.00   16.60    0.00    0.00 52.10    
0.00    0.00    0.00   31.30
Average:      18    0.00    0.00   13.90    0.00    0.00 61.20    
0.00    0.00    0.00   24.90
Average:      19    0.00    0.00    9.99    0.00    0.00 70.33    
0.00    0.00    0.00   19.68
Average:      20    0.00    0.00    9.00    0.00    0.00 73.00    
0.00    0.00    0.00   18.00
Average:      21    0.00    0.00    8.70    0.00    0.00 73.90    
0.00    0.00    0.00   17.40
Average:      22    0.00    0.00   15.42    0.00    0.00 58.56    
0.00    0.00    0.00   26.03
Average:      23    0.00    0.00   10.81    0.00    0.00 71.67    
0.00    0.00    0.00   17.52
Average:      24    0.00    0.00   10.00    0.00    0.00 71.80    
0.00    0.00    0.00   18.20
Average:      25    0.00    0.00   11.19    0.00    0.00 71.13    
0.00    0.00    0.00   17.68
Average:      26    0.00    0.00   11.00    0.00    0.00 70.80    
0.00    0.00    0.00   18.20
Average:      27    0.00    0.00   10.01    0.00    0.00 69.57    
0.00    0.00    0.00   20.42
Average:      28    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      29    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      30    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      31    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      32    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      33    0.00    0.00    3.90    0.00    0.00 0.00    0.00    
0.00    0.00   96.10
Average:      34    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      35    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      36    0.10    0.00    0.20    0.00    0.00 0.00    0.00    
0.00    0.00   99.70
Average:      37    0.20    0.00    0.30    0.00    0.00 0.00    0.00    
0.00    0.00   99.50
Average:      38    0.00    0.00    0.00    0.00    0.00 0.00    0.00    
0.00    0.00  100.00
Average:      39    0.00    0.00    2.60    0.00    0.00 0.00    0.00    
0.00    0.00   97.40
Average:      40    0.00    0.00    0.90    0.00    0.00 0.00    0.00    
0.00    0.00   99.10
Average:      41    0.10    0.00    0.50    0.00    0.00 0.00    0.00    
0.00    0.00   99.40
Average:      42    0.00    0.00    9.91    0.00    0.00 70.67    
0.00    0.00    0.00   19.42
Average:      43    0.00    0.00   15.90    0.00    0.00 57.50    
0.00    0.00    0.00   26.60
Average:      44    0.00    0.00   12.20    0.00    0.00 66.20    
0.00    0.00    0.00   21.60
Average:      45    0.00    0.00   12.00    0.00    0.00 67.50    
0.00    0.00    0.00   20.50
Average:      46    0.00    0.00   12.90    0.00    0.00 65.50    
0.00    0.00    0.00   21.60
Average:      47    0.00    0.00   14.59    0.00    0.00 60.84    
0.00    0.00    0.00   24.58
Average:      48    0.00    0.00   13.59    0.00    0.00 61.74    
0.00    0.00    0.00   24.68
Average:      49    0.00    0.00   18.36    0.00    0.00 53.29    
0.00    0.00    0.00   28.34
Average:      50    0.00    0.00   15.32    0.00    0.00 58.86    
0.00    0.00    0.00   25.83
Average:      51    0.00    0.00   17.60    0.00    0.00 55.20    
0.00    0.00    0.00   27.20
Average:      52    0.00    0.00   15.92    0.00    0.00 56.06    
0.00    0.00    0.00   28.03
Average:      53    0.00    0.00   13.00    0.00    0.00 62.30    
0.00    0.00    0.00   24.70
Average:      54    0.00    0.00   13.20    0.00    0.00 61.50    
0.00    0.00    0.00   25.30
Average:      55    0.00    0.00   14.59    0.00    0.00 58.64    
0.00    0.00    0.00   26.77


ethtool -k enp175s0f0
Features for enp175s0f0:
rx-checksumming: on
tx-checksumming: on
         tx-checksum-ipv4: on
         tx-checksum-ip-generic: off [fixed]
         tx-checksum-ipv6: on
         tx-checksum-fcoe-crc: off [fixed]
         tx-checksum-sctp: off [fixed]
scatter-gather: on
         tx-scatter-gather: on
         tx-scatter-gather-fraglist: off [fixed]
tcp-segmentation-offload: on
         tx-tcp-segmentation: on
         tx-tcp-ecn-segmentation: off [fixed]
         tx-tcp-mangleid-segmentation: off
         tx-tcp6-segmentation: on
udp-fragmentation-offload: off
generic-segmentation-offload: on
generic-receive-offload: on
large-receive-offload: off [fixed]
rx-vlan-offload: on
tx-vlan-offload: on
ntuple-filters: off
receive-hashing: on
highdma: on [fixed]
rx-vlan-filter: on
vlan-challenged: off [fixed]
tx-lockless: off [fixed]
netns-local: off [fixed]
tx-gso-robust: off [fixed]
tx-fcoe-segmentation: off [fixed]
tx-gre-segmentation: on
tx-gre-csum-segmentation: on
tx-ipxip4-segmentation: off [fixed]
tx-ipxip6-segmentation: off [fixed]
tx-udp_tnl-segmentation: on
tx-udp_tnl-csum-segmentation: on
tx-gso-partial: on
tx-sctp-segmentation: off [fixed]
tx-esp-segmentation: off [fixed]
tx-udp-segmentation: on
fcoe-mtu: off [fixed]
tx-nocache-copy: off
loopback: off [fixed]
rx-fcs: off
rx-all: off
tx-vlan-stag-hw-insert: on
rx-vlan-stag-hw-parse: off [fixed]
rx-vlan-stag-filter: on [fixed]
l2-fwd-offload: off [fixed]
hw-tc-offload: off
esp-hw-offload: off [fixed]
esp-tx-csum-hw-offload: off [fixed]
rx-udp_tunnel-port-offload: on
tls-hw-tx-offload: off [fixed]
tls-hw-rx-offload: off [fixed]
rx-gro-hw: off [fixed]
tls-hw-record: off [fixed]

ethtool -c enp175s0f0
Coalesce parameters for enp175s0f0:
Adaptive RX: off  TX: on
stats-block-usecs: 0
sample-interval: 0
pkt-rate-low: 0
pkt-rate-high: 0
dmac: 32703

rx-usecs: 256
rx-frames: 128
rx-usecs-irq: 0
rx-frames-irq: 0

tx-usecs: 8
tx-frames: 128
tx-usecs-irq: 0
tx-frames-irq: 0

rx-usecs-low: 0
rx-frame-low: 0
tx-usecs-low: 0
tx-frame-low: 0

rx-usecs-high: 0
rx-frame-high: 0
tx-usecs-high: 0
tx-frame-high: 0

ethtool -g enp175s0f0
Ring parameters for enp175s0f0:
Pre-set maximums:
RX:             8192
RX Mini:        0
RX Jumbo:       0
TX:             8192
Current hardware settings:
RX:             4096
RX Mini:        0
RX Jumbo:       0
TX:             4096

^ permalink raw reply

* Re: Ethernet on my CycloneV broke since 4.9.124
From: Dinh Nguyen @ 2018-10-31 22:01 UTC (permalink / raw)
  To: Clément Péron; +Cc: netdev
In-Reply-To: <CAJiuCccpJwa+Png72Lg6wp0NrXWUQDOWuDBRP=RwtHF_yKyxEg@mail.gmail.com>

Hi Clement,

On 10/31/2018 10:36 AM, Clément Péron wrote:
> Hi Dinh,
> 
> On Wed, 31 Oct 2018 at 15:42, Dinh Nguyen <dinguyen@kernel.org> wrote:
>>
>> Hi Clement,
>>
>> On 10/31/2018 08:01 AM, Clément Péron wrote:
>>> Hi,
>>>
>>> The patch "net: stmmac: socfpga: add additional ocp reset line for
>>> Stratix10" introduce in 4.9.124 broke the ethernet on my CycloneV
>>> board.
>>>
>>> When I boot i have this issue :
>>>
>>> socfpga-dwmac ff702000.ethernet: error getting reset control of ocp -2
>>> socfpga-dwmac: probe of ff702000.ethernet failed with error -2
>>>
>>> Reverting the commit : 6f37f7b62baa6a71d7f3f298acb64de51275e724 fix the issue.
>>>
>>
>> Are you sure? I just booted v4.9.124 and did not see any errors. The
>> error should not appear because the commit is using
>> devm_reset_control_get_optional().
> 
> I'm booting on 4.9.130 actually, Agree with you that
> devm_reset_control_get_optional should not failed but checking other
> usage of this helper
> https://elixir.bootlin.com/linux/v4.9.135/source/drivers/i2c/busses/i2c-mv64xxx.c#L824
> https://elixir.bootlin.com/linux/v4.9.135/source/drivers/crypto/sunxi-ss/sun4i-ss-core.c#L259
> Show that they don't check for errors except for PROBE_DEFER
> 

I made a mistake, I was booting linux-next. I am seeing the error with
v4.9.124. It's due to this commit not getting backported:

"bb475230b8e59a reset: make optional functions really optional"

I have backported the patch and is available here if you like to take a
look:

https://git.kernel.org/pub/scm/linux/kernel/git/dinguyen/linux.git/log/?h=v4.9.124_optional_reset

Dinh

^ permalink raw reply

* [PATCH] igb: Fix format with line continuation whitespace
From: Joe Perches @ 2018-11-01  7:03 UTC (permalink / raw)
  To: Jeff Kirsher; +Cc: David S. Miller, intel-wired-lan, netdev, linux-kernel

The line continuation unintentionally adds whitespace so
instead use a coalesced format to remove the whitespace.

Miscellanea:

o Use a more typical style for ternaries and arguments
  for this logging message

Signed-off-by: Joe Perches <joe@perches.com>
---
 drivers/net/ethernet/intel/igb/igb_main.c | 13 ++++++-------
 1 file changed, 6 insertions(+), 7 deletions(-)

diff --git a/drivers/net/ethernet/intel/igb/igb_main.c b/drivers/net/ethernet/intel/igb/igb_main.c
index 5df88ad8ac81..3a3410f03d04 100644
--- a/drivers/net/ethernet/intel/igb/igb_main.c
+++ b/drivers/net/ethernet/intel/igb/igb_main.c
@@ -1850,13 +1850,12 @@ static void igb_config_tx_modes(struct igb_adapter *adapter, int queue)
 	 * configuration' in respect to these parameters.
 	 */
 
-	netdev_dbg(netdev, "Qav Tx mode: cbs %s, launchtime %s, queue %d \
-			    idleslope %d sendslope %d hiCredit %d \
-			    locredit %d\n",
-		   (ring->cbs_enable) ? "enabled" : "disabled",
-		   (ring->launchtime_enable) ? "enabled" : "disabled", queue,
-		   ring->idleslope, ring->sendslope, ring->hicredit,
-		   ring->locredit);
+	netdev_dbg(netdev, "Qav Tx mode: cbs %s, launchtime %s, queue %d idleslope %d sendslope %d hiCredit %d locredit %d\n",
+		   ring->cbs_enable ? "enabled" : "disabled",
+		   ring->launchtime_enable ? "enabled" : "disabled",
+		   queue,
+		   ring->idleslope, ring->sendslope,
+		   ring->hicredit, ring->locredit);
 }
 
 static int igb_save_txtime_params(struct igb_adapter *adapter, int queue,

^ permalink raw reply related

* Re: [PATCH bpf] libbpf: Fix compile error in libbpf_attach_type_by_name
From: Daniel Borkmann @ 2018-10-31 22:08 UTC (permalink / raw)
  To: Arnaldo Carvalho de Melo, Andrey Ignatov; +Cc: netdev, ast, kernel-team
In-Reply-To: <20181031204957.GD28340@kernel.org>

On 10/31/2018 09:49 PM, Arnaldo Carvalho de Melo wrote:
> Em Wed, Oct 31, 2018 at 12:57:18PM -0700, Andrey Ignatov escreveu:
>> Arnaldo Carvalho de Melo reported build error in libbpf when clang
>> version 3.8.1-24 (tags/RELEASE_381/final) is used:
>>
>> libbpf.c:2201:36: error: comparison of constant -22 with expression of
>> type 'const enum bpf_attach_type' is always false
>> [-Werror,-Wtautological-constant-out-of-range-compare]
>>                 if (section_names[i].attach_type == -EINVAL)
>>                     ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ^  ~~~~~~~
>> 1 error generated.
>>
>> Fix the error by keeping "is_attachable" property of a program in a
>> separate struct field instead of trying to use attach_type itself.
> 
> Thanks, now it builds in all the previously failing systems:
> 
> # export PERF_TARBALL=http://192.168.86.4/perf/perf-4.19.0.tar.xz
> # dm debian:9 fedora:25 fedora:26 fedora:27 ubuntu:16.04 ubuntu:17.10
>    1 debian:9        : Ok   gcc (Debian 6.3.0-18+deb9u1) 6.3.0 20170516          clang version 3.8.1-24 (tags/RELEASE_381/final)
>    2 fedora:25       : Ok   gcc (GCC) 6.4.1 20170727 (Red Hat 6.4.1-1)           clang version 3.9.1 (tags/RELEASE_391/final)
>    3 fedora:26       : Ok   gcc (GCC) 7.3.1 20180130 (Red Hat 7.3.1-2)           clang version 4.0.1 (tags/RELEASE_401/final)
>    4 fedora:27       : Ok   gcc (GCC) 7.3.1 20180712 (Red Hat 7.3.1-6)           clang version 5.0.2 (tags/RELEASE_502/final)
>    5 ubuntu:16.04    : Ok   gcc (Ubuntu 5.4.0-6ubuntu1~16.04.10) 5.4.0 20160609  clang version 3.8.0-2ubuntu4 (tags/RELEASE_380/final)
>    6 ubuntu:17.10    : Ok   gcc (Ubuntu 7.2.0-8ubuntu3.2) 7.2.0                  clang version 4.0.1-6 (tags/RELEASE_401/final)
> #
> 
> Tested-by: Arnaldo Carvalho de Melo <acme@redhat.com>

Thanks everyone, applied to bpf tree.

^ permalink raw reply

* RE: [RFC PATCH 4/4] ixgbe: add support for extended PHC gettime
From: Keller, Jacob E @ 2018-10-31 22:08 UTC (permalink / raw)
  To: Richard Cochran, Miroslav Lichvar
  Cc: netdev@vger.kernel.org, intel-wired-lan@lists.osuosl.org
In-Reply-To: <20181031211632.f7imvzvrsn6pbwgb@localhost>



> -----Original Message-----
> From: Richard Cochran [mailto:richardcochran@gmail.com]
> Sent: Wednesday, October 31, 2018 2:17 PM
> To: Miroslav Lichvar <mlichvar@redhat.com>
> Cc: Keller, Jacob E <jacob.e.keller@intel.com>; netdev@vger.kernel.org; intel-wired-
> lan@lists.osuosl.org
> Subject: Re: [RFC PATCH 4/4] ixgbe: add support for extended PHC gettime
> 
> On Wed, Oct 31, 2018 at 03:49:35PM +0100, Miroslav Lichvar wrote:
> >
> > How about separating the PHC timestamp from the ptp_system_timestamp
> > structure and use NULL to indicate we don't want to read the system
> > clock? A gettimex64(ptp, ts, NULL) call would be equal to
> > gettime64(ptp, ts).
> 
> Doesn't sound too bad to me.
> 
> Thanks,
> Richard

Yep, this seems fine to me as well.

Regards,
Jake

^ permalink raw reply

* Re: Kernel 4.19 network performance - forwarding/routing normal users traffic
From: Eric Dumazet @ 2018-10-31 22:09 UTC (permalink / raw)
  To: Paweł Staszewski, netdev
In-Reply-To: <61697e49-e839-befc-8330-fc00187c48ee@itcare.pl>



On 10/31/2018 02:57 PM, Paweł Staszewski wrote:
> Hi
> 
> So maybee someone will be interested how linux kernel handles normal traffic (not pktgen :) )
> 
> 
> Server HW configuration:
> 
> CPU : Intel(R) Xeon(R) Gold 6132 CPU @ 2.60GHz
> 
> NIC's: 2x 100G Mellanox ConnectX-4 (connected to x16 pcie 8GT)
> 
> 
> Server software:
> 
> FRR - as routing daemon
> 
> enp175s0f0 (100G) - 16 vlans from upstreams (28 RSS binded to local numa node)
> 
> enp175s0f1 (100G) - 343 vlans to clients (28 RSS binded to local numa node)
> 
> 
> Maximum traffic that server can handle:
> 
> Bandwidth
> 
>  bwm-ng v0.6.1 (probing every 1.000s), press 'h' for help
>   input: /proc/net/dev type: rate
>   \         iface                   Rx Tx                Total
> ==============================================================================
>        enp175s0f1:          28.51 Gb/s           37.24 Gb/s           65.74 Gb/s
>        enp175s0f0:          38.07 Gb/s           28.44 Gb/s           66.51 Gb/s
> ------------------------------------------------------------------------------
>             total:          66.58 Gb/s           65.67 Gb/s          132.25 Gb/s
> 
> 
> Packets per second:
> 
>  bwm-ng v0.6.1 (probing every 1.000s), press 'h' for help
>   input: /proc/net/dev type: rate
>   -         iface                   Rx Tx                Total
> ==============================================================================
>        enp175s0f1:      5248589.00 P/s       3486617.75 P/s 8735207.00 P/s
>        enp175s0f0:      3557944.25 P/s       5232516.00 P/s 8790460.00 P/s
> ------------------------------------------------------------------------------
>             total:      8806533.00 P/s       8719134.00 P/s 17525668.00 P/s
> 
> 
> After reaching that limits nics on the upstream side (more RX traffic) start to drop packets
> 
> 
> I just dont understand that server can't handle more bandwidth (~40Gbit/s is limit where all cpu's are 100% util) - where pps on RX side are increasing.
> 
> Was thinking that maybee reached some pcie x16 limit - but x16 8GT is 126Gbit - and also when testing with pktgen i can reach more bw and pps (like 4x more comparing to normal internet traffic)
> 
> And wondering if there is something that can be improved here.
> 
> 
> 
> Some more informations / counters / stats and perf top below:
> 
> Perf top flame graph:
> 
> https://uploadfiles.io/7zo6u
> 
> 
> 
> System configuration(long):
> 
> 
> cat /sys/devices/system/node/node1/cpulist
> 14-27,42-55
> cat /sys/class/net/enp175s0f0/device/numa_node
> 1
> cat /sys/class/net/enp175s0f1/device/numa_node
> 1
> 
> 
> 
> 
> 
> ip -s -d link ls dev enp175s0f0
> 6: enp175s0f0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 8192
>     link/ether 0c:c4:7a:d8:5d:1c brd ff:ff:ff:ff:ff:ff promiscuity 0 addrgenmode eui64 numtxqueues 448 numrxqueues 56 gso_max_size 65536 gso_max_segs 65535
>     RX: bytes  packets  errors  dropped overrun mcast
>     184142375840858 141347715974 2       2806325 0       85050528
>     TX: bytes  packets  errors  dropped carrier collsns
>     99270697277430 172227994003 0       0       0       0
> 
>  ip -s -d link ls dev enp175s0f1
> 7: enp175s0f1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq state UP mode DEFAULT group default qlen 8192
>     link/ether 0c:c4:7a:d8:5d:1d brd ff:ff:ff:ff:ff:ff promiscuity 0 addrgenmode eui64 numtxqueues 448 numrxqueues 56 gso_max_size 65536 gso_max_segs 65535
>     RX: bytes  packets  errors  dropped overrun mcast
>     99686284170801 173507590134 61      669685  0       100304421
>     TX: bytes  packets  errors  dropped carrier collsns
>     184435107970545 142383178304 0       0       0       0
> 
> 
> ./softnet.sh
> cpu      total    dropped   squeezed  collision        rps flow_limit
> 
> 
> 
> 
>    PerfTop:  108490 irqs/sec  kernel:99.6%  exact:  0.0% [4000Hz cycles],  (all, 56 CPUs)
> ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
> 
>     26.78%  [kernel]       [k] queued_spin_lock_slowpath

This is highly suspect.

A call graph (perf record -a -g sleep 1; perf report --stdio) would tell what is going on.

With that many TX/RX queues, I would expect you to not use RPS/RFS, and have a 1/1 RX/TX mapping,
so I do not know what could request a spinlock contention.

^ permalink raw reply


This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox