From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga14.intel.com (mga14.intel.com [192.55.52.115]) by dpdk.org (Postfix) with ESMTP id 506E53B5 for ; Mon, 27 Mar 2017 18:35:01 +0200 (CEST) DKIM-Signature: v=1; a=rsa-sha256; c=simple/simple; d=intel.com; i=@intel.com; q=dns/txt; s=intel; t=1490632501; x=1522168501; h=subject:to:references:cc:from:message-id:date: mime-version:in-reply-to:content-transfer-encoding; bh=86IvRPqCfKfz9SZdXpG3QBpzN7qUwohCMluwA3sR3SY=; b=VRf7zIeErCW055qvgKQTJ8d0dYbkJU9tIh/oJS/0DifBg33o/qTfxLS5 mgX6PNiV+cDRLNUD8+Bl2DJvTvtl3A==; Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by fmsmga103.fm.intel.com with ESMTP/TLS/DHE-RSA-AES256-GCM-SHA384; 27 Mar 2017 09:34:34 -0700 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.36,232,1486454400"; d="scan'208";a="1147512169" Received: from fyigit-mobl1.ger.corp.intel.com (HELO [10.237.220.122]) ([10.237.220.122]) by fmsmga002.fm.intel.com with ESMTP; 27 Mar 2017 09:34:25 -0700 To: "Xing, Beilei" , "Wu, Jingjing" , Jerin Jacob , Thomas Monjalon References: <1488533497-27682-1-git-send-email-beilei.xing@intel.com> <1488533497-27682-4-git-send-email-beilei.xing@intel.com> <94479800C636CB44BD422CB454846E01315A7D2C@SHSMSX101.ccr.corp.intel.com> Cc: "Zhang, Helin" , "dev@dpdk.org" , "Iremonger, Bernard" , "Liu, Yong" From: Ferruh Yigit Message-ID: <9d5800ef-eedf-c75f-302d-b38781c6598c@intel.com> Date: Mon, 27 Mar 2017 17:34:24 +0100 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Thunderbird/45.8.0 MIME-Version: 1.0 In-Reply-To: <94479800C636CB44BD422CB454846E01315A7D2C@SHSMSX101.ccr.corp.intel.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Subject: Re: [dpdk-dev] [PATCH 3/4] net/i40e: support tunnel filter to VF X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Mon, 27 Mar 2017 16:35:02 -0000 On 3/9/2017 6:08 AM, Xing, Beilei wrote: > > >> -----Original Message----- >> From: Yigit, Ferruh >> Sent: Wednesday, March 8, 2017 11:50 PM >> To: Xing, Beilei ; Wu, Jingjing >> Cc: Zhang, Helin ; dev@dpdk.org; Iremonger, >> Bernard ; Liu, Yong >> Subject: Re: [dpdk-dev] [PATCH 3/4] net/i40e: support tunnel filter to VF >> >> On 3/3/2017 9:31 AM, Beilei Xing wrote: >>> This patch is to support tunnel filter to VF. >>> >>> Signed-off-by: Bernard Iremonger >>> Signed-off-by: Yong Liu >>> Signed-off-by: Beilei Xing >>> --- >> >> <...> >> >>> +/** >>> + * Tunneling Packet filter configuration. >>> + */ >>> +struct i40e_tunnel_filter_conf { >> >> There is already "rte_eth_tunnel_filter_conf", why driver is creating its own >> version of structure instead of using / updating public one? > > Marvin has an announcement for this change before, but it's rejected as consistent filter API is available. > http://www.dpdk.org/dev/patchwork/patch/19772/ > > So we add this new feature in PMD: > + uint8_t is_to_vf; /**< 0 - to PF, 1 - to VF */ > + uint16_t vf_id; /**< VF id for tunnel filter insertion. */ Cc'ed Jerin and Thomas, which seems commented to Marvin's patch. Jerin, Thomas, Can you please comment if it is OK to localize the component and modify it in the PMD comparing the previous updating ethdev approach? Thanks, ferruh > > >> >>> + struct ether_addr outer_mac; /**< Outer MAC address to match. >> */ >>> + struct ether_addr inner_mac; /**< Inner MAC address to match. */ >>> + uint16_t inner_vlan; /**< Inner VLAN to match. */ >>> + uint32_t outer_vlan; /**< Outer VLAN to match */ >>> + enum rte_tunnel_iptype ip_type; /**< IP address type. */ >>> + /** >>> + * Outer destination IP address to match if ETH_TUNNEL_FILTER_OIP >>> + * is set in filter_type, or inner destination IP address to match >>> + * if ETH_TUNNEL_FILTER_IIP is set in filter_type. >>> + */ >>> + union { >>> + uint32_t ipv4_addr; /**< IPv4 address in big endian. */ >>> + uint32_t ipv6_addr[4]; /**< IPv6 address in big endian. */ >>> + } ip_addr; >>> + /** Flags from ETH_TUNNEL_FILTER_XX - see above. */ >>> + uint16_t filter_type; >>> + enum rte_eth_tunnel_type tunnel_type; /**< Tunnel Type. */ >>> + uint32_t tenant_id; /**< Tenant ID to match. VNI, GRE key... */ >>> + uint16_t queue_id; /**< Queue assigned to if match. */ >>> + uint8_t is_to_vf; /**< 0 - to PF, 1 - to VF */ >>> + uint16_t vf_id; /**< VF id for tunnel filter insertion. */ >>> +}; >>> + >> >> <...>