From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lb0-x22b.google.com (mail-lb0-x22b.google.com [IPv6:2a00:1450:4010:c04::22b]) by dpdk.org (Postfix) with ESMTP id 35739156 for ; Tue, 12 Nov 2013 15:23:24 +0100 (CET) Received: by mail-lb0-f171.google.com with SMTP id x18so4607336lbi.16 for ; Tue, 12 Nov 2013 06:24:19 -0800 (PST) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:date:message-id:subject:from:to :cc:content-type; bh=BCeA6qAd+lxklIbXcD0e9zMa2IF4pAfwGsrN73NpJHM=; b=aNqJgQMdnvLlpg6+tC0A+YINDdofMh2KpsrfJWMtJDKo25x9xugPoxkGFW7HdMGcHO I0bsyGdbfEYckLtiYvFCuPM5eTeWdeNfQpJrLRe0aeQjQUfJXAL2ufKFbV2qS5D2I6Aa cEvZxCqzbIn8G3aUnmzGsw3hq+6Q+TgiRNordGJDqja8A5xjllmckfUUNdu7Ss9Kx0Hp eSroBA978Jp6XJ8vx45roZ0Q38oABjdRU2R5L4m6cqQI8VKvLKBd5gcDdl08w5nJR2l0 x9ga51DJL5hIuTfJz5a1N15Vhle6XPqeBqOJlADccWQlTHSnCHpTbBrUtNBM1JYBNMxx bQaQ== MIME-Version: 1.0 X-Received: by 10.152.202.167 with SMTP id kj7mr1157121lac.43.1384266259159; Tue, 12 Nov 2013 06:24:19 -0800 (PST) Received: by 10.114.12.233 with HTTP; Tue, 12 Nov 2013 06:24:19 -0800 (PST) In-Reply-To: References: Date: Tue, 12 Nov 2013 18:24:19 +0400 Message-ID: From: Vladimir Medvedkin To: Prashant Upadhyaya Content-Type: text/plain; charset=ISO-8859-1 X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Cc: "dev@dpdk.org" Subject: Re: [dpdk-dev] olflags in SRIOV VF environment X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Nov 2013 14:23:24 -0000 Hi Prashant, May be it doesn't work due to Known Issues and Limitations (see Release Notes) quote: 6.1 In packets provided by the PMD, some flags are missing In packets provided by the PMD, some flags are missing. The application does not have access to information provided by the hardware (packet is broadcast, packet is multicast, packet is IPv4 and so on). Regards, Vladimir 2013/11/12 Prashant Upadhyaya > Hi guys, > > I am facing a peculiar issue with the usage of struct rte_mbuf-> ol_flags > field in the rte_mbuf when I receive the packets with the rte_eth_rx_burst > function. > I use the ol_flags field to identify whether is an IPv4 or IPv6 packet or > not thus - > > if ((pkts_burst->ol_flags & PKT_RX_IPV4_HDR) || > (pkts_burst->ol_flags & > PKT_RX_IPV6_HDR)) > > [pkts_burst is my rte_mbuf pointer] > > Now here are the observations - > > > 1. This works mighty fine when my app is working on the native > machine > > 2. This works good when I run this in a VM and use one VF over SRIOV > from one NIC port > > 3. This works good when I run this in two VM's and use one VF from 2 > different NIC ports (one VF from each) and use these VF's in these 2 VM's > (VF1 from NIC port1 in VM1 and VF2 from NIC port2 in VM2) > > 4. However the ol_flags fails to classify the packets when I use 2 > VM's and use 2 VF's from the 'same' NIC port and expose one each to the 2 > VM's I have > > There is no bug in my 'own' application, because when I stopped inspecting > the ol_flags for classification of IPv4 and V6 packets and wrote a mini > logic of my own by inspecting the ether type of the packets (the packets > themselves come proper in all the cases, thankfully), my entire usecase > passes (it is a rather significant usecase, so it can't be luck) > > Any idea guys why it works and doesn't work ? > > Regards > -Prashant > > > > > > > =============================================================================== > Please refer to http://www.aricent.com/legal/email_disclaimer.html > for important disclosures regarding this electronic communication. > > =============================================================================== >