From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mails.dpdk.org (mails.dpdk.org [217.70.189.124]) by inbox.dpdk.org (Postfix) with ESMTP id 9B63BA0A0A; Thu, 21 Jan 2021 06:02:02 +0100 (CET) Received: from [217.70.189.124] (localhost [127.0.0.1]) by mails.dpdk.org (Postfix) with ESMTP id 2405B140E3D; Thu, 21 Jan 2021 06:02:02 +0100 (CET) Received: from mga06.intel.com (mga06.intel.com [134.134.136.31]) by mails.dpdk.org (Postfix) with ESMTP id 780C4140E22 for ; Thu, 21 Jan 2021 06:02:00 +0100 (CET) IronPort-SDR: m4Hkf4xmy2voHYGqnbJn6CtStymQXizrVulqc32HQ8rJq+Vb5C9wr5K2sejD/S9q++q85U7bnd eHpJTNivhy9A== X-IronPort-AV: E=McAfee;i="6000,8403,9870"; a="240758683" X-IronPort-AV: E=Sophos;i="5.79,363,1602572400"; d="scan'208,217";a="240758683" Received: from orsmga002.jf.intel.com ([10.7.209.21]) by orsmga104.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Jan 2021 21:01:58 -0800 IronPort-SDR: 6D74H2wLzRbqeG2Dg6IvTBtKcosp1d+1lEjVCjz7tkCLmdIlKYyWIIBCi1Qv9NeXgwvqQoqcgb bEG5LBnLBW7w== X-IronPort-AV: E=Sophos;i="5.79,363,1602572400"; d="scan'208,217";a="366633070" Received: from pkadam-mobl1.amr.corp.intel.com (HELO [10.209.111.205]) ([10.209.111.205]) by orsmga002-auth.jf.intel.com with ESMTP/TLS/ECDHE-RSA-AES256-GCM-SHA384; 20 Jan 2021 21:01:52 -0800 To: Ferruh Yigit , Ali Alnubani , David Marchand , NBU-Contact-Thomas Monjalon , "Richardson, Bruce" Cc: Tal Shnaiderman , Odi Assli , "Rong, Leyi" , "Zhang, Qi Z" , "Lu, Wenzhuo" , "Xing, Beilei" , "Menon, Ranjit" , "dev@dpdk.org" , Raslan Darawsheh References: <20201215021945.103396-1-leyi.rong@intel.com> <5859779.zrh4IzKrC7@thomas> From: "Kadam, Pallavi" Message-ID: <0b572eb2-8abe-e673-dd01-9db6cbaf3b0f@intel.com> Date: Thu, 21 Jan 2021 10:31:44 +0530 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:78.0) Gecko/20100101 Thunderbird/78.6.0 MIME-Version: 1.0 In-Reply-To: Content-Language: en-US Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Content-Filtered-By: Mailman/MimeDel 2.1.29 Subject: Re: [dpdk-dev] [PATCH v3 0/3] AVX512 vPMD on i40e X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.29 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" On 1/20/2021 11:21 PM, Ferruh Yigit wrote: > On 1/20/2021 10:05 AM, Ali Alnubani wrote: >>>> For info, I don't reproduce the compilation issue on my machine. >>> >>> My build system has been upgraded from fc31 to fc32 so I guess this has >>> something to do with it. >>> >> >> I can reproduce with (Fedora MinGW 9.2.1-6.fc32), but not with >> (Fedora MinGW 10.2.1-2.fc33). >> > > First of all, for the patch @Tal provided its link, the windows build > and the mingw build errors are different. And the windows build error > should be already fixed by a patch that squashed in next-net > (https://patches.dpdk.org/patch/86804/). > > > And for the mingw, I have same result with Ali, I can reproduce with > (Fedora MinGW 9.2.1-6.fc32). > > But different from the CI, I am getting the error [1] for all > following files: > rte_random.c > i40e_rxtx_vec_sse.c > i40e_rxtx_vec_avx512.c > i40e_rxtx_vec_avx2.c > rte_ethdev.c > > [1] Error: invalid register for .seh_savexmm > > > There is a stackoverflow entry for it: > https://stackoverflow.com/questions/43152633/invalid-register-for-seh-savexmm-in-cygwin > > > If I use '-fno-asynchronous-unwind-tables' as suggested there, the > build works fine. > > So the problem may not be just 'i40e_rxtx_vec_avx512.c'. > > > If I change the machine type from 'native' to 'corei7' [2], the build > error reduced to only 'i40e_rxtx_vec_avx512.c', so the problem seems > happens when avx512 is supported by CPU, in this case compiler seems > has a defect. > And since for 'i40e_rxtx_vec_avx512.c' the '-march=skylake-avx512' > explicitly set can cause the problem seen in all machines. > > [2] >  diff --git a/config/x86/cross-mingw b/config/x86/cross-mingw >  index 4c15a7fa2e..7cee238add 100644 >  --- a/config/x86/cross-mingw >  +++ b/config/x86/cross-mingw >  @@ -9,5 +9,5 @@ pkgconfig = 'x86_64-w64-mingw32-pkg-config' >   [host_machine] >   system = 'windows' >   cpu_family = 'x86_64' >  -cpu = 'native' >  +cpu = 'corei7' >   endian = 'little' > > > > @Ranjit, @Pallavi, > Are you building using mingw, and if so are you observing same problem? We usually build using Clang. However, we verify with mingw as well before submitting the patch. As mentioned in the patch [1] comments, we replaced #include x86intrin.h with in the file i40e_rxtx_vec_avx2.c And this helped fixing an error related to conflicting types for '__m_prefethw' with Clang on Windows. I was able to build this patch using Clang as well as mingw. [1] http://patches.dpdk.org/patch/84770/ I verified patch fix submitted by Rong, Leyi, it builds successfully with Clang. However, I am getting same error "Error: invalid register for .seh_savexmm" using mingw for 'i40e_rxtx_vec_avx512.c' file. Thanks, Pallavi