patches for DPDK stable branches
 help / color / mirror / Atom feed
From: Kevin Traynor <ktraynor@redhat.com>
To: Rasesh Mody <rasesh.mody@cavium.com>
Cc: dpdk stable <stable@dpdk.org>
Subject: [dpdk-stable] patch 'net/bnx2x: cleanup info logs' has been queued to stable release 18.11.1
Date: Fri, 14 Dec 2018 18:24:06 +0000	[thread overview]
Message-ID: <20181214182430.11593-4-ktraynor@redhat.com> (raw)
In-Reply-To: <20181214182430.11593-1-ktraynor@redhat.com>

Hi,

FYI, your patch has been queued to stable release 18.11.1

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 12/18/18. So please
shout if anyone has objections.

Also note that after the patch there's a diff of the upstream commit vs the
patch applied to the branch. This will indicate if there was any rebasing
needed to apply to the stable branch. If there were code changes for rebasing
(ie: not only metadata diffs), please double check that the rebase was
correctly done.

Thanks.

Kevin Traynor

---
>From 638943ff479d53fbdacce84401e64e51d5720682 Mon Sep 17 00:00:00 2001
From: Rasesh Mody <rasesh.mody@cavium.com>
Date: Sat, 17 Nov 2018 09:37:40 +0000
Subject: [PATCH] net/bnx2x: cleanup info logs

[ upstream commit 4dd60a7a935257f66e8a29cf11e7ca404041c013 ]

Reduced number of INFO logs in BNX2X PMD by converting some INFO
logs to DEBUG and few NOTICE logs to INFO, removing extra new lines,
printing banner bar once for the adapter and device specific info.

Fixes: ba7eeb035a5f ("net/bnx2x: fix logging to include device name")
Fixes: 540a211084a7 ("bnx2x: driver core")

Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
---
 drivers/net/bnx2x/bnx2x.c        | 144 +++++++++++++++----------------
 drivers/net/bnx2x/bnx2x.h        |   3 +-
 drivers/net/bnx2x/bnx2x_ethdev.c |  20 ++---
 drivers/net/bnx2x/bnx2x_ethdev.h |   1 +
 drivers/net/bnx2x/ecore_sp.c     |   8 +-
 5 files changed, 87 insertions(+), 89 deletions(-)

diff --git a/drivers/net/bnx2x/bnx2x.c b/drivers/net/bnx2x/bnx2x.c
index 86c79c289..4c775c163 100644
--- a/drivers/net/bnx2x/bnx2x.c
+++ b/drivers/net/bnx2x/bnx2x.c
@@ -5810,5 +5810,5 @@ static int bnx2x_set_power_state(struct bnx2x_softc *sc, uint8_t state)
 	/* If there is no power capability, silently succeed */
 	if (!(sc->devinfo.pcie_cap_flags & BNX2X_PM_CAPABLE_FLAG)) {
-		PMD_DRV_LOG(WARNING, sc, "No power capability");
+		PMD_DRV_LOG(INFO, sc, "No power capability");
 		return 0;
 	}
@@ -6919,11 +6919,11 @@ static void bnx2x_link_report_locked(struct bnx2x_softc *sc)
 	}
 
-	PMD_DRV_LOG(INFO, sc, "Change in link status : cur_data = %lx, last_reported_link = %lx\n",
-		    cur_data.link_report_flags,
-		    sc->last_reported_link.link_report_flags);
+	ELINK_DEBUG_P2(sc, "Change in link status : cur_data = %lx, last_reported_link = %lx",
+		       cur_data.link_report_flags,
+		       sc->last_reported_link.link_report_flags);
 
 	sc->link_cnt++;
 
-	PMD_DRV_LOG(INFO, sc, "link status change count = %x\n", sc->link_cnt);
+	ELINK_DEBUG_P1(sc, "link status change count = %x", sc->link_cnt);
 	/* report new link params and remember the state for the next time */
 	rte_memcpy(&sc->last_reported_link, &cur_data, sizeof(cur_data));
@@ -6931,5 +6931,5 @@ static void bnx2x_link_report_locked(struct bnx2x_softc *sc)
 	if (bnx2x_test_bit(BNX2X_LINK_REPORT_LINK_DOWN,
 			 &cur_data.link_report_flags)) {
-		PMD_DRV_LOG(INFO, sc, "NIC Link is Down");
+		ELINK_DEBUG_P0(sc, "NIC Link is Down");
 	} else {
 		__rte_unused const char *duplex;
@@ -6939,6 +6939,8 @@ static void bnx2x_link_report_locked(struct bnx2x_softc *sc)
 					   &cur_data.link_report_flags)) {
 			duplex = "full";
+				ELINK_DEBUG_P0(sc, "link set to full duplex");
 		} else {
 			duplex = "half";
+				ELINK_DEBUG_P0(sc, "link set to half duplex");
 		}
 
@@ -7124,5 +7126,5 @@ void bnx2x_periodic_callout(struct bnx2x_softc *sc)
 	if ((sc->state != BNX2X_STATE_OPEN) ||
 	    (atomic_load_acq_long(&sc->periodic_flags) == PERIODIC_STOP)) {
-		PMD_DRV_LOG(INFO, sc, "periodic callout exit (state=0x%x)",
+		PMD_DRV_LOG(DEBUG, sc, "periodic callout exit (state=0x%x)",
 			    sc->state);
 		return;
@@ -8318,5 +8320,5 @@ static int bnx2x_get_device_info(struct bnx2x_softc *sc)
 		 ((sc->devinfo.bc_ver >> 16) & 0xff),
 		 ((sc->devinfo.bc_ver >> 8) & 0xff));
-	PMD_DRV_LOG(INFO, sc, "Bootcode version: %s", sc->devinfo.bc_ver_str);
+	PMD_DRV_LOG(DEBUG, sc, "Bootcode version: %s", sc->devinfo.bc_ver_str);
 
 	/* get the bootcode shmem address */
@@ -11744,40 +11746,34 @@ static const char *get_bnx2x_flags(uint32_t flags)
 }
 
-/*
- * Prints useful adapter info.
- */
+/* Prints useful adapter info. */
 void bnx2x_print_adapter_info(struct bnx2x_softc *sc)
 {
 	int i = 0;
-	__rte_unused uint32_t ext_phy_type;
 
-	PMD_INIT_FUNC_TRACE(sc);
-	if (sc->link_vars.phy_flags & PHY_XGXS_FLAG)
-		ext_phy_type = ELINK_XGXS_EXT_PHY_TYPE(REG_RD(sc,
-							      sc->
-							      devinfo.shmem_base
-							      + offsetof(struct
-									 shmem_region,
-									 dev_info.port_hw_config
-									 [0].external_phy_config)));
-	else
-		ext_phy_type = ELINK_SERDES_EXT_PHY_TYPE(REG_RD(sc,
-								sc->
-								devinfo.shmem_base
-								+
-								offsetof(struct
-									 shmem_region,
-									 dev_info.port_hw_config
-									 [0].external_phy_config)));
-
-	PMD_DRV_LOG(INFO, sc, "\n\n===================================\n");
+	PMD_DRV_LOG(INFO, sc, "========================================");
+	/* DPDK and Driver versions */
+	PMD_DRV_LOG(INFO, sc, "%12s : %s", "DPDK",
+			rte_version());
+	PMD_DRV_LOG(INFO, sc, "%12s : %s", "Driver",
+			bnx2x_pmd_version());
+	/* Firmware versions. */
+	PMD_DRV_LOG(INFO, sc, "%12s : %d.%d.%d",
+		     "Firmware",
+		     BNX2X_5710_FW_MAJOR_VERSION,
+		     BNX2X_5710_FW_MINOR_VERSION,
+		     BNX2X_5710_FW_REVISION_VERSION);
+	PMD_DRV_LOG(INFO, sc, "%12s : %s",
+		     "Bootcode", sc->devinfo.bc_ver_str);
 	/* Hardware chip info. */
 	PMD_DRV_LOG(INFO, sc, "%12s : %#08x", "ASIC", sc->devinfo.chip_id);
 	PMD_DRV_LOG(INFO, sc, "%12s : %c%d", "Rev", (CHIP_REV(sc) >> 12) + 'A',
 		     (CHIP_METAL(sc) >> 4));
-
-	/* Bus info. */
-	PMD_DRV_LOG(INFO, sc,
-		    "%12s : %d, ", "Bus PCIe", sc->devinfo.pcie_link_width);
+	/* Bus PCIe info. */
+	PMD_DRV_LOG(INFO, sc, "%12s : 0x%x", "Vendor Id",
+		    sc->devinfo.vendor_id);
+	PMD_DRV_LOG(INFO, sc, "%12s : 0x%x", "Device Id",
+		    sc->devinfo.device_id);
+	PMD_DRV_LOG(INFO, sc, "%12s : width x%d, ", "Bus PCIe",
+		    sc->devinfo.pcie_link_width);
 	switch (sc->devinfo.pcie_link_speed) {
 	case 1:
@@ -11793,8 +11789,6 @@ void bnx2x_print_adapter_info(struct bnx2x_softc *sc)
 		PMD_DRV_LOG(INFO, sc, "%33s", "Unknown link speed");
 	}
-
 	/* Device features. */
 	PMD_DRV_LOG(INFO, sc, "%12s : ", "Flags");
-
 	/* Miscellaneous flags. */
 	if (sc->devinfo.pcie_cap_flags & BNX2X_MSI_CAPABLE_FLAG) {
@@ -11802,5 +11796,4 @@ void bnx2x_print_adapter_info(struct bnx2x_softc *sc)
 		i++;
 	}
-
 	if (sc->devinfo.pcie_cap_flags & BNX2X_MSIX_CAPABLE_FLAG) {
 		if (i > 0)
@@ -11809,37 +11802,25 @@ void bnx2x_print_adapter_info(struct bnx2x_softc *sc)
 		i++;
 	}
+	PMD_DRV_LOG(INFO, sc, "%12s : %s", "OVLAN", (OVLAN(sc) ? "YES" : "NO"));
+	PMD_DRV_LOG(INFO, sc, "%12s : %s", "MF", (IS_MF(sc) ? "YES" : "NO"));
+	PMD_DRV_LOG(INFO, sc, "========================================");
+}
 
-	if (IS_PF(sc)) {
-		PMD_DRV_LOG(INFO, sc, "%12s : ", "Queues");
-		switch (sc->sp->rss_rdata.rss_mode) {
-		case ETH_RSS_MODE_DISABLED:
-			PMD_DRV_LOG(INFO, sc, "%19s", "None");
-			break;
-		case ETH_RSS_MODE_REGULAR:
-			PMD_DRV_LOG(INFO, sc,
-				    "%18s : %d", "RSS", sc->num_queues);
-			break;
-		default:
-			PMD_DRV_LOG(INFO, sc, "%22s", "Unknown");
-			break;
-		}
-	}
+/* Prints useful device info. */
+void bnx2x_print_device_info(struct bnx2x_softc *sc)
+{
+	__rte_unused uint32_t ext_phy_type;
+	uint32_t offset, reg_val;
 
-	/* RTE and Driver versions */
-	PMD_DRV_LOG(INFO, sc, "%12s : %s", "DPDK",
-			rte_version());
-	PMD_DRV_LOG(INFO, sc, "%12s : %s", "Driver",
-			bnx2x_pmd_version());
+	PMD_INIT_FUNC_TRACE(sc);
+	offset = offsetof(struct shmem_region,
+			  dev_info.port_hw_config[0].external_phy_config);
+	reg_val = REG_RD(sc, sc->devinfo.shmem_base + offset);
+	if (sc->link_vars.phy_flags & PHY_XGXS_FLAG)
+		ext_phy_type = ELINK_XGXS_EXT_PHY_TYPE(reg_val);
+	else
+		ext_phy_type = ELINK_SERDES_EXT_PHY_TYPE(reg_val);
 
-	/* Firmware versions and device features. */
-	PMD_DRV_LOG(INFO, sc, "%12s : %d.%d.%d",
-		     "Firmware",
-		     BNX2X_5710_FW_MAJOR_VERSION,
-		     BNX2X_5710_FW_MINOR_VERSION,
-		     BNX2X_5710_FW_REVISION_VERSION);
-	PMD_DRV_LOG(INFO, sc, "%12s : %s",
-		     "Bootcode", sc->devinfo.bc_ver_str);
-
-	PMD_DRV_LOG(INFO, sc, "\n\n===================================\n");
+	/* Device features. */
 	PMD_DRV_LOG(INFO, sc, "%12s : %u", "Bnx2x Func", sc->pcie_func);
 	PMD_DRV_LOG(INFO, sc,
@@ -11847,6 +11828,4 @@ void bnx2x_print_adapter_info(struct bnx2x_softc *sc)
 	PMD_DRV_LOG(INFO, sc, "%12s : %s", "DMAE Is",
 		     (sc->dmae_ready ? "Ready" : "Not Ready"));
-	PMD_DRV_LOG(INFO, sc, "%12s : %s", "OVLAN", (OVLAN(sc) ? "YES" : "NO"));
-	PMD_DRV_LOG(INFO, sc, "%12s : %s", "MF", (IS_MF(sc) ? "YES" : "NO"));
 	PMD_DRV_LOG(INFO, sc, "%12s : %u", "MTU", sc->mtu);
 	PMD_DRV_LOG(INFO, sc,
@@ -11864,8 +11843,29 @@ void bnx2x_print_adapter_info(struct bnx2x_softc *sc)
 		PMD_DRV_LOG(INFO, sc, "%12s : %s", "Recovery",
 			     get_recovery_state(sc->recovery_state));
+	/* Queue info. */
+	if (IS_PF(sc)) {
+		switch (sc->sp->rss_rdata.rss_mode) {
+		case ETH_RSS_MODE_DISABLED:
+			PMD_DRV_LOG(INFO, sc, "%12s : %s", "Queues", "RSS mode - None");
+			break;
+		case ETH_RSS_MODE_REGULAR:
+			PMD_DRV_LOG(INFO, sc, "%12s : %s,", "Queues", "RSS mode - Regular");
+			PMD_DRV_LOG(INFO, sc, "%16d", sc->num_queues);
+			break;
+		default:
+			PMD_DRV_LOG(INFO, sc, "%12s : %s", "Queues", "RSS mode - Unknown");
+			break;
+		}
+	}
 	PMD_DRV_LOG(INFO, sc, "%12s : CQ = %lx,  EQ = %lx", "SPQ Left",
 		     sc->cq_spq_left, sc->eq_spq_left);
+
 	PMD_DRV_LOG(INFO, sc,
 		    "%12s : %x", "Switch", sc->link_params.switch_cfg);
-	PMD_DRV_LOG(INFO, sc, "\n\n===================================\n");
+	PMD_DRV_LOG(INFO, sc, "pcie_bus=%d, pcie_device=%d",
+			sc->pcie_bus, sc->pcie_device);
+	PMD_DRV_LOG(INFO, sc, "bar0.addr=%p, bar1.addr=%p",
+			sc->bar[BAR0].base_addr, sc->bar[BAR1].base_addr);
+	PMD_DRV_LOG(INFO, sc, "port=%d, path=%d, vnic=%d, func=%d",
+			PORT_ID(sc), PATH_ID(sc), VNIC_ID(sc), FUNC_ID(sc));
 }
diff --git a/drivers/net/bnx2x/bnx2x.h b/drivers/net/bnx2x/bnx2x.h
index 74780725b..32a12294b 100644
--- a/drivers/net/bnx2x/bnx2x.h
+++ b/drivers/net/bnx2x/bnx2x.h
@@ -1938,4 +1938,5 @@ int bnx2x_tx_encap(struct bnx2x_tx_queue *txq, struct rte_mbuf *m0);
 uint8_t bnx2x_txeof(struct bnx2x_softc *sc, struct bnx2x_fastpath *fp);
 void bnx2x_print_adapter_info(struct bnx2x_softc *sc);
+void bnx2x_print_device_info(struct bnx2x_softc *sc);
 int bnx2x_intr_legacy(struct bnx2x_softc *sc, int scan_fp);
 void bnx2x_link_status_update(struct bnx2x_softc *sc);
@@ -1985,5 +1986,5 @@ bnx2x_set_rx_mode(struct bnx2x_softc *sc)
 		}
 	} else {
-		PMD_DRV_LOG(NOTICE, sc, "Card is not ready to change mode");
+		PMD_DRV_LOG(INFO, sc, "Card is not ready to change mode");
 	}
 }
diff --git a/drivers/net/bnx2x/bnx2x_ethdev.c b/drivers/net/bnx2x/bnx2x_ethdev.c
index 0057843b5..cc7816dd5 100644
--- a/drivers/net/bnx2x/bnx2x_ethdev.c
+++ b/drivers/net/bnx2x/bnx2x_ethdev.c
@@ -246,6 +246,5 @@ bnx2x_dev_start(struct rte_eth_dev *dev)
 	}
 
-	/* Print important adapter info for the user. */
-	bnx2x_print_adapter_info(sc);
+	bnx2x_print_device_info(sc);
 
 	return ret;
@@ -575,4 +574,5 @@ bnx2x_common_dev_init(struct rte_eth_dev *eth_dev, int is_vf)
 	struct rte_pci_addr pci_addr;
 	struct bnx2x_softc *sc;
+	static bool adapter_info = true;
 
 	/* Extract key data structures */
@@ -633,6 +633,13 @@ bnx2x_common_dev_init(struct rte_eth_dev *eth_dev, int is_vf)
 	}
 
+	/* Print important adapter info for the user. */
+	if (adapter_info) {
+		bnx2x_print_adapter_info(sc);
+		adapter_info = false;
+	}
+
 	/* schedule periodic poll for slowpath link events */
 	if (IS_PF(sc)) {
+		PMD_DRV_LOG(DEBUG, sc, "Scheduling periodic poll for slowpath link events");
 		ret = rte_eal_alarm_set(BNX2X_SP_TIMER_PERIOD,
 					bnx2x_periodic_start, (void *)eth_dev);
@@ -646,13 +653,4 @@ bnx2x_common_dev_init(struct rte_eth_dev *eth_dev, int is_vf)
 	eth_dev->data->mac_addrs = (struct ether_addr *)sc->link_params.mac_addr;
 
-	PMD_DRV_LOG(INFO, sc, "pcie_bus=%d, pcie_device=%d",
-			sc->pcie_bus, sc->pcie_device);
-	PMD_DRV_LOG(INFO, sc, "bar0.addr=%p, bar1.addr=%p",
-			sc->bar[BAR0].base_addr, sc->bar[BAR1].base_addr);
-	PMD_DRV_LOG(INFO, sc, "port=%d, path=%d, vnic=%d, func=%d",
-			PORT_ID(sc), PATH_ID(sc), VNIC_ID(sc), FUNC_ID(sc));
-	PMD_DRV_LOG(INFO, sc, "portID=%d vendorID=0x%x deviceID=0x%x",
-			eth_dev->data->port_id, pci_dev->id.vendor_id, pci_dev->id.device_id);
-
 	if (IS_VF(sc)) {
 		rte_spinlock_init(&sc->vf2pf_lock);
diff --git a/drivers/net/bnx2x/bnx2x_ethdev.h b/drivers/net/bnx2x/bnx2x_ethdev.h
index 807ba1780..45958db9a 100644
--- a/drivers/net/bnx2x/bnx2x_ethdev.h
+++ b/drivers/net/bnx2x/bnx2x_ethdev.h
@@ -48,4 +48,5 @@
 #define TRUE                1
 
+typedef int bool;
 #define false               0
 #define true                1
diff --git a/drivers/net/bnx2x/ecore_sp.c b/drivers/net/bnx2x/ecore_sp.c
index ab730abea..6d2bb815c 100644
--- a/drivers/net/bnx2x/ecore_sp.c
+++ b/drivers/net/bnx2x/ecore_sp.c
@@ -531,7 +531,6 @@ static void __ecore_vlan_mac_h_read_unlock(struct bnx2x_softc *sc,
 	} else {
 		o->head_reader--;
-		PMD_DRV_LOG(INFO, sc,
-			    "vlan_mac_lock - decreased readers to %d",
-			    o->head_reader);
+		ECORE_MSG(sc, "vlan_mac_lock - decreased readers to %d",
+			  o->head_reader);
 	}
 
@@ -540,6 +539,5 @@ static void __ecore_vlan_mac_h_read_unlock(struct bnx2x_softc *sc,
 	 */
 	if (!o->head_reader && o->head_exe_request) {
-		PMD_DRV_LOG(INFO, sc,
-			    "vlan_mac_lock - reader release encountered a pending request");
+		ECORE_MSG(sc, "vlan_mac_lock - reader release encountered a pending request");
 
 		/* Writer release will do the trick */
-- 
2.19.0

---
  Diff of the applied patch vs upstream commit (please double-check if non-empty:
---
--- -	2018-12-14 18:23:18.325664172 +0000
+++ 0004-net-bnx2x-cleanup-info-logs.patch	2018-12-14 18:23:18.000000000 +0000
@@ -1,15 +1,16 @@
-From 4dd60a7a935257f66e8a29cf11e7ca404041c013 Mon Sep 17 00:00:00 2001
+From 638943ff479d53fbdacce84401e64e51d5720682 Mon Sep 17 00:00:00 2001
 From: Rasesh Mody <rasesh.mody@cavium.com>
 Date: Sat, 17 Nov 2018 09:37:40 +0000
 Subject: [PATCH] net/bnx2x: cleanup info logs
 
+[ upstream commit 4dd60a7a935257f66e8a29cf11e7ca404041c013 ]
+
 Reduced number of INFO logs in BNX2X PMD by converting some INFO
 logs to DEBUG and few NOTICE logs to INFO, removing extra new lines,
 printing banner bar once for the adapter and device specific info.
 
 Fixes: ba7eeb035a5f ("net/bnx2x: fix logging to include device name")
 Fixes: 540a211084a7 ("bnx2x: driver core")
-Cc: stable@dpdk.org
 
 Signed-off-by: Rasesh Mody <rasesh.mody@cavium.com>
 ---

  parent reply	other threads:[~2018-12-14 18:25 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-12-14 18:24 [dpdk-stable] patch 'devtools: fix symbol check when adding experimental section' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/igb: fix LSC interrupt when using MSI-X' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/ixgbe/base: add LHA ID' " Kevin Traynor
2018-12-14 18:24 ` Kevin Traynor [this message]
2019-01-18 18:33   ` [dpdk-stable] patch 'net/bnx2x: cleanup info logs' " Kevin Traynor
     [not found]     ` <BYAPR18MB2838857286B7A306B3EE0A1DB5990@BYAPR18MB2838.namprd18.prod.outlook.com>
2019-01-23 22:32       ` Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'app/testpmd: fix MPLS BoS bit default value' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'examples/bond: fix initialization order' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'examples/bond: fix crash when there is no active slave' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/mlx5: fix function documentation' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/ifcvf: fix typo on struct name' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/i40e: fix getting RSS configuration' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/ixgbe: fix Rx LRO capability offload for x550' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/i40e: fix using recovery mode firmware' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/i40e: fix overwriting RSS RETA' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/ixgbe: " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/i40e: fix port close' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/mlx5: fix validation of Rx queue number' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'ethdev: fix typo in queue setup error log' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'app/testpmd: fix MPLSoUDP encapsulation' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'app/testpmd: fix MPLSoGRE " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'doc: fix a typo in testpmd guide' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'doc: fix flow action command names " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/cxgbe: fix control queue mbuf pool naming convention' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'drivers/net: fix several Tx prepare functions' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'vhost: fix crash after mmap failure' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'vhost: fix double read of descriptor flags' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'examples/vhost_crypto: fix bracket' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/i40e: revert fix offload not supported mask' " Kevin Traynor
2018-12-14 18:24 ` [dpdk-stable] patch 'net/i40e: remove redundant reset of queue number' " Kevin Traynor

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20181214182430.11593-4-ktraynor@redhat.com \
    --to=ktraynor@redhat.com \
    --cc=rasesh.mody@cavium.com \
    --cc=stable@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).