From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by dpdk.org (Postfix) with ESMTP id CE4B03572 for ; Mon, 1 Apr 2019 17:13:33 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 66ED222082; Mon, 1 Apr 2019 11:13:33 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Mon, 01 Apr 2019 11:13:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s=mesmtp; bh=iSNLWt7hQ6C9QfISvT4RkgGQGJM288OcTmWHrt1Yc8I=; b=Haal4zFXtojJ mz9RrrnO5vYPtZwtpYjzUxUJ2Z2M4NwC0+lE7VX2lLLeTpFuypifeOA9yeVuZdSl IL9SKhSpfpGGDHJts6AQnWN0qqKd5AA/AnKdVu3gXadHOZ5N5giT3E13wvpdfh5g U00sy284eoQxySrT9gGJh/4PQ55NZzw= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=iSNLWt7hQ6C9QfISvT4RkgGQGJM288OcTmWHrt1Yc 8I=; b=nsMeEhAqylL3Cda0CkxrNeFJCcY6jl0LVR4ZtTQZdj8/ELDoZNnLCjEpp VZZpQVxx6mwvvhcRnRNjJzJLlQdqvDxxo7RIyoEaH8jpPHEeTw63p4szBLegRPYg Qy3vNm9j+wlyKlkVzd1+T3b6sTqFsQDA4YUrL4/MFeGl4PlOWalvZPMos5WFSb9+ 8WJYYTW98n/rSCqqvvHRvo9CliBiDutMO0xAf36tVKKpnMS9L3LGXLML3J3fPF27 bgpgbRn/vjOes641blfXlJPEbfKpoKk/sk2tjiX245qbn42QS2l+ht3ddTmMVaKc 1eIQwtn+XCgKpGj7J+R8UzjN3xNSA== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedutddrleeggdekgecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvffufffkjghfggfgtgesthfuredttddtvdenucfhrhhomhepvfhhohhmrghs ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucffoh hmrghinhepughpughkrdhorhhgnecukfhppeejjedrudefgedrvddtfedrudekgeenucfr rghrrghmpehmrghilhhfrhhomhepthhhohhmrghssehmohhnjhgrlhhonhdrnhgvthenuc evlhhushhtvghrufhiiigvpedt X-ME-Proxy: Received: from xps.localnet (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id C8D72E4210; Mon, 1 Apr 2019 11:13:31 -0400 (EDT) From: Thomas Monjalon To: Ferruh Yigit , Bruce Richardson Cc: Wenzhuo Lu , Qi Zhang , dev@dpdk.org, cathal.ohare@intel.com, john.mcnamara@intel.com Date: Mon, 01 Apr 2019 17:13:29 +0200 Message-ID: <11278346.WqoB5W0OmQ@xps> In-Reply-To: References: <1551340136-83843-1-git-send-email-wenzhuo.lu@intel.com> <20190401143928.GA1441@bricha3-MOBL.ger.corp.intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [dpdk-dev] [PATCH v7 0/8] Support vector instructions on ICE 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, 01 Apr 2019 15:13:34 -0000 01/04/2019 16:56, Ferruh Yigit: > On 4/1/2019 3:39 PM, Bruce Richardson wrote: > > On Mon, Apr 01, 2019 at 01:51:38PM +0100, Ferruh Yigit wrote: > >> On 3/31/2019 4:52 PM, Thomas Monjalon wrote: > >>> 26/03/2019 10:50, Ferruh Yigit: > >>>>> Wenzhuo Lu (8): > >>>>> net/ice: fix Tx function setting > >>>>> net/ice: add pointer for queue buffer release > >>>>> net/ice: support vector SSE in RX > >>>>> net/ice: support Rx scatter SSE vector > >>>>> net/ice: support Tx SSE vector > >>>>> net/ice: support Rx AVX2 vector > >>>>> net/ice: support Rx scatter AVX2 vector > >>>>> net/ice: support vector AVX2 in TX > >>>> > >>>> This version (v7) pulled from next-net-intel to next-net. > >>> > >>> I assume these patches have been tested, or at least compiled. > >>> However, when running devtools/test-meson-builds.sh, there is a > >>> compilation error for build-x86-default: > >>> > >>> In file included from ../drivers/net/ice/ice_ethdev.h:10: > >>> rte_ethdev_pci.h:38:10: fatal error: 'rte_pci.h' file not found > >> > >> I tested this with meson but not able to catch the issue. Perhaps for my case > >> dependencies were build fast enough to cause a problem. > > > > That should be a problem with the meson builds. While with make builds, the > > headers files are picked up after they are copied to the "include" > > directory by the build process, in meson no such copying occurs and the > > header files are picked up by having the paths to them passed in the > > "dependency object" to each build. If the dependency does not exist then > > the build will never pass, irrespective of ordering, and if the dependency > > exists, the build will always find the header in its original location. > > I was checking this and recognized that no copying is happening. And I can see > many PMDs are using this header [1], not sure why ice is failing. > > > > > [The biggest benefit of this is that when building with ninja there are no > > dependencies between the individual .c files - each one can be compiled > > in parallel with all the others. It's only at the linking step that we need > > to wait for previous jobs to complete] > > > > In terms of this specific error with the header - did it get root caused? > > Since it occurs on the "default" path, I'd suggest the fallback handling in > > the meson.build file for the absense of AVX may be faulty, e.g. are you > > replacing c flags or dependencies rather than appending to them? > > Trying to find out the root cause, but as you said it occurs on the 'default' > path only, and taking into account that there is not copying dependent headers, > I am not able to find it yet, checking. Guys! Are you kidding me? I already described the root cause and the possible fixes: http://mails.dpdk.org/archives/dev/2019-March/128375.html This is in the case AVX2 being chosen at runtime. rte_ethdev_pci.h is included in a header file. The dependencies object is missing static_rte_pci and static_rte_bus_pci. I chose to just use rte_ethdev_driver.h instead. From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by dpdk.space (Postfix) with ESMTP id 52AE8A0679 for ; Mon, 1 Apr 2019 17:13:35 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 1179F3798; Mon, 1 Apr 2019 17:13:35 +0200 (CEST) Received: from out1-smtp.messagingengine.com (out1-smtp.messagingengine.com [66.111.4.25]) by dpdk.org (Postfix) with ESMTP id CE4B03572 for ; Mon, 1 Apr 2019 17:13:33 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 66ED222082; Mon, 1 Apr 2019 11:13:33 -0400 (EDT) Received: from mailfrontend1 ([10.202.2.162]) by compute1.internal (MEProxy); Mon, 01 Apr 2019 11:13:33 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding:content-type; s=mesmtp; bh=iSNLWt7hQ6C9QfISvT4RkgGQGJM288OcTmWHrt1Yc8I=; b=Haal4zFXtojJ mz9RrrnO5vYPtZwtpYjzUxUJ2Z2M4NwC0+lE7VX2lLLeTpFuypifeOA9yeVuZdSl IL9SKhSpfpGGDHJts6AQnWN0qqKd5AA/AnKdVu3gXadHOZ5N5giT3E13wvpdfh5g U00sy284eoQxySrT9gGJh/4PQ55NZzw= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:content-type :date:from:in-reply-to:message-id:mime-version:references :subject:to:x-me-proxy:x-me-proxy:x-me-sender:x-me-sender :x-sasl-enc; s=fm2; bh=iSNLWt7hQ6C9QfISvT4RkgGQGJM288OcTmWHrt1Yc 8I=; b=nsMeEhAqylL3Cda0CkxrNeFJCcY6jl0LVR4ZtTQZdj8/ELDoZNnLCjEpp VZZpQVxx6mwvvhcRnRNjJzJLlQdqvDxxo7RIyoEaH8jpPHEeTw63p4szBLegRPYg Qy3vNm9j+wlyKlkVzd1+T3b6sTqFsQDA4YUrL4/MFeGl4PlOWalvZPMos5WFSb9+ 8WJYYTW98n/rSCqqvvHRvo9CliBiDutMO0xAf36tVKKpnMS9L3LGXLML3J3fPF27 bgpgbRn/vjOes641blfXlJPEbfKpoKk/sk2tjiX245qbn42QS2l+ht3ddTmMVaKc 1eIQwtn+XCgKpGj7J+R8UzjN3xNSA== X-ME-Sender: X-ME-Proxy-Cause: gggruggvucftvghtrhhoucdtuddrgedutddrleeggdekgecutefuodetggdotefrodftvf curfhrohhfihhlvgemucfhrghsthforghilhdpqfgfvfdpuffrtefokffrpgfnqfghnecu uegrihhlohhuthemuceftddtnecusecvtfgvtghiphhivghnthhsucdlqddutddtmdenuc fjughrpefhvffufffkjghfggfgtgesthfuredttddtvdenucfhrhhomhepvfhhohhmrghs ucfoohhnjhgrlhhonhcuoehthhhomhgrshesmhhonhhjrghlohhnrdhnvghtqeenucffoh hmrghinhepughpughkrdhorhhgnecukfhppeejjedrudefgedrvddtfedrudekgeenucfr rghrrghmpehmrghilhhfrhhomhepthhhohhmrghssehmohhnjhgrlhhonhdrnhgvthenuc evlhhushhtvghrufhiiigvpedt X-ME-Proxy: Received: from xps.localnet (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id C8D72E4210; Mon, 1 Apr 2019 11:13:31 -0400 (EDT) From: Thomas Monjalon To: Ferruh Yigit , Bruce Richardson Cc: Wenzhuo Lu , Qi Zhang , dev@dpdk.org, cathal.ohare@intel.com, john.mcnamara@intel.com Date: Mon, 01 Apr 2019 17:13:29 +0200 Message-ID: <11278346.WqoB5W0OmQ@xps> In-Reply-To: References: <1551340136-83843-1-git-send-email-wenzhuo.lu@intel.com> <20190401143928.GA1441@bricha3-MOBL.ger.corp.intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="UTF-8" Subject: Re: [dpdk-dev] [PATCH v7 0/8] Support vector instructions on ICE 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: , Errors-To: dev-bounces@dpdk.org Sender: "dev" Message-ID: <20190401151329.A_JhQqxZr97O8Egz99MR2R30cPcYLbBk3ZxpOsbzPtc@z> 01/04/2019 16:56, Ferruh Yigit: > On 4/1/2019 3:39 PM, Bruce Richardson wrote: > > On Mon, Apr 01, 2019 at 01:51:38PM +0100, Ferruh Yigit wrote: > >> On 3/31/2019 4:52 PM, Thomas Monjalon wrote: > >>> 26/03/2019 10:50, Ferruh Yigit: > >>>>> Wenzhuo Lu (8): > >>>>> net/ice: fix Tx function setting > >>>>> net/ice: add pointer for queue buffer release > >>>>> net/ice: support vector SSE in RX > >>>>> net/ice: support Rx scatter SSE vector > >>>>> net/ice: support Tx SSE vector > >>>>> net/ice: support Rx AVX2 vector > >>>>> net/ice: support Rx scatter AVX2 vector > >>>>> net/ice: support vector AVX2 in TX > >>>> > >>>> This version (v7) pulled from next-net-intel to next-net. > >>> > >>> I assume these patches have been tested, or at least compiled. > >>> However, when running devtools/test-meson-builds.sh, there is a > >>> compilation error for build-x86-default: > >>> > >>> In file included from ../drivers/net/ice/ice_ethdev.h:10: > >>> rte_ethdev_pci.h:38:10: fatal error: 'rte_pci.h' file not found > >> > >> I tested this with meson but not able to catch the issue. Perhaps for my case > >> dependencies were build fast enough to cause a problem. > > > > That should be a problem with the meson builds. While with make builds, the > > headers files are picked up after they are copied to the "include" > > directory by the build process, in meson no such copying occurs and the > > header files are picked up by having the paths to them passed in the > > "dependency object" to each build. If the dependency does not exist then > > the build will never pass, irrespective of ordering, and if the dependency > > exists, the build will always find the header in its original location. > > I was checking this and recognized that no copying is happening. And I can see > many PMDs are using this header [1], not sure why ice is failing. > > > > > [The biggest benefit of this is that when building with ninja there are no > > dependencies between the individual .c files - each one can be compiled > > in parallel with all the others. It's only at the linking step that we need > > to wait for previous jobs to complete] > > > > In terms of this specific error with the header - did it get root caused? > > Since it occurs on the "default" path, I'd suggest the fallback handling in > > the meson.build file for the absense of AVX may be faulty, e.g. are you > > replacing c flags or dependencies rather than appending to them? > > Trying to find out the root cause, but as you said it occurs on the 'default' > path only, and taking into account that there is not copying dependent headers, > I am not able to find it yet, checking. Guys! Are you kidding me? I already described the root cause and the possible fixes: http://mails.dpdk.org/archives/dev/2019-March/128375.html This is in the case AVX2 being chosen at runtime. rte_ethdev_pci.h is included in a header file. The dependencies object is missing static_rte_pci and static_rte_bus_pci. I chose to just use rte_ethdev_driver.h instead.