DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] [PATCH 0/2] netvsc: small patches
@ 2018-08-06 18:22 Stephen Hemminger
  2018-08-06 18:22 ` [dpdk-dev] [PATCH 1/2] netvsc: support packet type Stephen Hemminger
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Stephen Hemminger @ 2018-08-06 18:22 UTC (permalink / raw)
  To: dev; +Cc: Stephen Hemminger

A couple of small missing features discovered during later
testing.  The netvsc PMD was not setting packet type or reporting
checksum failures.

Stephen Hemminger (2):
  netvsc: support packet type
  netvsc: report checksum failures

 drivers/net/netvsc/hn_rxtx.c | 13 +++++++++++--
 1 file changed, 11 insertions(+), 2 deletions(-)

-- 
2.18.0

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [dpdk-dev] [PATCH 1/2] netvsc: support packet type
  2018-08-06 18:22 [dpdk-dev] [PATCH 0/2] netvsc: small patches Stephen Hemminger
@ 2018-08-06 18:22 ` Stephen Hemminger
  2018-08-06 18:22 ` [dpdk-dev] [PATCH 2/2] netvsc: report checksum failures Stephen Hemminger
  2018-08-07 11:36 ` [dpdk-dev] [PATCH 0/2] netvsc: small patches Thomas Monjalon
  2 siblings, 0 replies; 4+ messages in thread
From: Stephen Hemminger @ 2018-08-06 18:22 UTC (permalink / raw)
  To: dev; +Cc: Stephen Hemminger, Stephen Hemminger

The Netvsc PMD was not filling in the packet type information.

Fixes: 4e9c73e96e83 ("net/netvsc: add Hyper-V network device")
Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
---
 drivers/net/netvsc/hn_rxtx.c | 10 ++++++++--
 1 file changed, 8 insertions(+), 2 deletions(-)

diff --git a/drivers/net/netvsc/hn_rxtx.c b/drivers/net/netvsc/hn_rxtx.c
index cc8a534b5ce8..25c97ea43ad6 100644
--- a/drivers/net/netvsc/hn_rxtx.c
+++ b/drivers/net/netvsc/hn_rxtx.c
@@ -24,6 +24,7 @@
 #include <rte_memory.h>
 #include <rte_eal.h>
 #include <rte_dev.h>
+#include <rte_net.h>
 #include <rte_bus_vmbus.h>
 #include <rte_spinlock.h>
 
@@ -495,6 +496,10 @@ static void hn_rxpkt(struct hn_rx_queue *rxq, struct hn_rx_bufinfo *rxb,
 	m->port = rxq->port_id;
 	m->pkt_len = dlen;
 	m->data_len = dlen;
+	m->packet_type = rte_net_get_ptype(m, NULL,
+					   RTE_PTYPE_L2_MASK |
+					   RTE_PTYPE_L3_MASK |
+					   RTE_PTYPE_L4_MASK);
 
 	if (info->vlan_info != HN_NDIS_VLAN_INFO_INVALID) {
 		m->vlan_tci = info->vlan_info;
@@ -515,9 +520,10 @@ static void hn_rxpkt(struct hn_rx_queue *rxq, struct hn_rx_bufinfo *rxb,
 		m->hash.rss = info->hash_value;
 	}
 
-	PMD_RX_LOG(DEBUG, "port %u:%u RX id %" PRIu64 " size %u ol_flags %#" PRIx64,
+	PMD_RX_LOG(DEBUG,
+		   "port %u:%u RX id %"PRIu64" size %u type %#x ol_flags %#"PRIx64,
 		   rxq->port_id, rxq->queue_id, rxb->xactid,
-		   m->pkt_len, m->ol_flags);
+		   m->pkt_len, m->packet_type, m->ol_flags);
 
 	++rxq->stats.packets;
 	rxq->stats.bytes += m->pkt_len;
-- 
2.18.0

^ permalink raw reply	[flat|nested] 4+ messages in thread

* [dpdk-dev] [PATCH 2/2] netvsc: report checksum failures
  2018-08-06 18:22 [dpdk-dev] [PATCH 0/2] netvsc: small patches Stephen Hemminger
  2018-08-06 18:22 ` [dpdk-dev] [PATCH 1/2] netvsc: support packet type Stephen Hemminger
@ 2018-08-06 18:22 ` Stephen Hemminger
  2018-08-07 11:36 ` [dpdk-dev] [PATCH 0/2] netvsc: small patches Thomas Monjalon
  2 siblings, 0 replies; 4+ messages in thread
From: Stephen Hemminger @ 2018-08-06 18:22 UTC (permalink / raw)
  To: dev; +Cc: Stephen Hemminger, Stephen Hemminger

The host will notify netvsc device about failed UDP and TCP
checksum. Propogate that information into the mbuf.

Signed-off-by: Stephen Hemminger <sthemmin@microsoft.com>
---
 drivers/net/netvsc/hn_rxtx.c | 3 +++
 1 file changed, 3 insertions(+)

diff --git a/drivers/net/netvsc/hn_rxtx.c b/drivers/net/netvsc/hn_rxtx.c
index 25c97ea43ad6..02ef27e363cc 100644
--- a/drivers/net/netvsc/hn_rxtx.c
+++ b/drivers/net/netvsc/hn_rxtx.c
@@ -513,6 +513,9 @@ static void hn_rxpkt(struct hn_rx_queue *rxq, struct hn_rx_bufinfo *rxb,
 		if (info->csum_info & (NDIS_RXCSUM_INFO_UDPCS_OK
 				       | NDIS_RXCSUM_INFO_TCPCS_OK))
 			m->ol_flags |= PKT_RX_L4_CKSUM_GOOD;
+		else if (info->csum_info & (NDIS_RXCSUM_INFO_TCPCS_FAILED
+					    | NDIS_RXCSUM_INFO_UDPCS_FAILED))
+			m->ol_flags |= PKT_RX_L4_CKSUM_BAD;
 	}
 
 	if (info->hash_info != HN_NDIS_HASH_INFO_INVALID) {
-- 
2.18.0

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: [dpdk-dev] [PATCH 0/2] netvsc: small patches
  2018-08-06 18:22 [dpdk-dev] [PATCH 0/2] netvsc: small patches Stephen Hemminger
  2018-08-06 18:22 ` [dpdk-dev] [PATCH 1/2] netvsc: support packet type Stephen Hemminger
  2018-08-06 18:22 ` [dpdk-dev] [PATCH 2/2] netvsc: report checksum failures Stephen Hemminger
@ 2018-08-07 11:36 ` Thomas Monjalon
  2 siblings, 0 replies; 4+ messages in thread
From: Thomas Monjalon @ 2018-08-07 11:36 UTC (permalink / raw)
  To: Stephen Hemminger; +Cc: dev

06/08/2018 20:22, Stephen Hemminger:
> A couple of small missing features discovered during later
> testing.  The netvsc PMD was not setting packet type or reporting
> checksum failures.
> 
> Stephen Hemminger (2):
>   netvsc: support packet type
>   netvsc: report checksum failures

Applied, thanks

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2018-08-07 11:36 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-06 18:22 [dpdk-dev] [PATCH 0/2] netvsc: small patches Stephen Hemminger
2018-08-06 18:22 ` [dpdk-dev] [PATCH 1/2] netvsc: support packet type Stephen Hemminger
2018-08-06 18:22 ` [dpdk-dev] [PATCH 2/2] netvsc: report checksum failures Stephen Hemminger
2018-08-07 11:36 ` [dpdk-dev] [PATCH 0/2] netvsc: small patches Thomas Monjalon

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).