> -----Original Message-----
> From: dev [mailto:dev-boun...@dpdk.org] On Behalf Of Didier Pallard
> Sent: Wednesday, March 28, 2018 8:44 AM
> To: dev@dpdk.org
> Subject: [dpdk-dev] [PATCH 2/8] net/vmxnet3: return unknown IPv4
> extension len ptype
> 
> Rather than parsing IP header to get proper ptype to return, just return
> RTE_PTYPE_L3_IPV4_EXT_UNKNOWN, that tells application that we have an
> IP
> packet with unknown header length.

Any specific reason of doing this? I can image there are applications that 
depend on this and the cost of parsing is simply shifted to the app or via 
rte_eth_add_rx_callback().

> 
> Signed-off-by: Didier Pallard <didier.pall...@6wind.com>
> ---
>  drivers/net/vmxnet3/vmxnet3_rxtx.c | 8 +-------
>  1 file changed, 1 insertion(+), 7 deletions(-)
> 
> diff --git a/drivers/net/vmxnet3/vmxnet3_rxtx.c
> b/drivers/net/vmxnet3/vmxnet3_rxtx.c
> index 3a8c62fc1..156dc8e52 100644
> --- a/drivers/net/vmxnet3/vmxnet3_rxtx.c
> +++ b/drivers/net/vmxnet3/vmxnet3_rxtx.c
> @@ -659,13 +659,7 @@ vmxnet3_rx_offload(const Vmxnet3_RxCompDesc
> *rcd, struct rte_mbuf *rxm)
> 
>       /* Check packet type, checksum errors, etc. Only support IPv4 for
> now. */
>       if (rcd->v4) {
> -             struct ether_hdr *eth = rte_pktmbuf_mtod(rxm, struct
> ether_hdr *);
> -             struct ipv4_hdr *ip = (struct ipv4_hdr *)(eth + 1);
> -
> -             if (((ip->version_ihl & 0xf) << 2) > (int)sizeof(struct 
> ipv4_hdr))
> -                     rxm->packet_type = RTE_PTYPE_L3_IPV4_EXT;
> -             else
> -                     rxm->packet_type = RTE_PTYPE_L3_IPV4;
> +             rxm->packet_type = RTE_PTYPE_L3_IPV4_EXT_UNKNOWN;
> 
>               if (!rcd->cnc) {
>                       if (!rcd->ipc)
> --
> 2.11.0

Reply via email to