From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr0-f174.google.com (mail-wr0-f174.google.com [209.85.128.174]) by dpdk.org (Postfix) with ESMTP id 551BA201 for ; Wed, 5 Apr 2017 11:01:17 +0200 (CEST) Received: by mail-wr0-f174.google.com with SMTP id k6so4815285wre.2 for ; Wed, 05 Apr 2017 02:01:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:user-agent:in-reply-to :references:mime-version:content-transfer-encoding; bh=BdGlZ39hZLLjQpBhmVcgODtA6swKl9SD4hUbOSpSAlQ=; b=Pu97Iqxz53w7YNFX5+B+KZPdAZs6t5KOryEC3VljVbHExfOv4OznSuk/bkjaQZf2H8 8YyHr/aXHdKzAN0YGwCxmuS0ZfaD2s7Ut8L96fU8RgMWIm30qJHdOmKYtlQamaNEqRWZ 9qJQfIAQAd9RKLUunQw/AFcpOtJA7LE+7bX2Z5T5Cabxj/FzDUrcvVN5StKlNXZk/nBS LE2bCBEA0Gsf4SL2SliC0HbBtkOSkGRJRaK9zVQt76x3eXJtZaysS9j3TwuNVT53UNEk cEx7jlJmCn5DLJ2IMkATg+GA0E1QE+xytDTlbJgdjTQ0aoqcmLyym7ozXA74+9E/pPsw G6NQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:user-agent :in-reply-to:references:mime-version:content-transfer-encoding; bh=BdGlZ39hZLLjQpBhmVcgODtA6swKl9SD4hUbOSpSAlQ=; b=BlLI/x6XbRdT8YzK4NW1ypcyIa8Kaus1EaOpYiWYhBtKHxbAC0JGI6VCKibp6Y9o82 KTsJAaMhiRah1ls13EjutYI7PS+3XHjVmYVytzQPGvK94O7RrcL/fZBWfh9Ahtp/YzgL qC+Uh6jATKqZXMkEci0KgV+VzlY7IFZZXrNgZukAdogKsuaDGcXnF19MC7UCm/XPQ5fW 9vXwkUaT5SE+9M/u0iH+ssI1QhEk+yBo78UjEaOsCmBs7yygZgjNasoVeJ2U5RmaIEGU 2HN7DWRoc2cXH7k2pi08giOAS5ecldEmwiAbiVpa+Td7HWodyUn3McBdiismr83YkZI/ XUOw== X-Gm-Message-State: AFeK/H1GgTfNKtYCWCc2wq1eln2BUAGfhLRyg0hk9rkk3bIyCisRNgFWjvr+bAubucyNNQ+T X-Received: by 10.223.148.230 with SMTP id 93mr16573924wrr.34.1491382877085; Wed, 05 Apr 2017 02:01:17 -0700 (PDT) Received: from xps13.localnet (184.203.134.77.rev.sfr.net. [77.134.203.184]) by smtp.gmail.com with ESMTPSA id x131sm21513848wme.28.2017.04.05.02.01.16 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Wed, 05 Apr 2017 02:01:16 -0700 (PDT) From: Thomas Monjalon To: "Singh, Jasvinder" Cc: dev@dpdk.org, "olivier.matz@6wind.com" , "Doherty, Declan" , "De Lara Guarch, Pablo" Date: Wed, 05 Apr 2017 11:01:15 +0200 Message-ID: <4843218.AadDjlxfvY@xps13> User-Agent: KMail/4.14.10 (Linux/4.5.4-1-ARCH; KDE/4.14.11; x86_64; ; ) In-Reply-To: <54CBAA185211B4429112C315DA58FF6D31B493E5@IRSMSX103.ger.corp.intel.com> References: <1490873422-13734-2-git-send-email-jasvinder.singh@intel.com> <1613321.D1UC30mH7n@xps13> <54CBAA185211B4429112C315DA58FF6D31B493E5@IRSMSX103.ger.corp.intel.com> MIME-Version: 1.0 Content-Transfer-Encoding: 7Bit Content-Type: text/plain; charset="us-ascii" Subject: Re: [dpdk-dev] [PATCH v9 0/3] librte_net: add crc computation support 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: Wed, 05 Apr 2017 09:01:17 -0000 2017-04-05 08:34, Singh, Jasvinder: > Hi Thomas, > > From: Thomas Monjalon [mailto:thomas.monjalon@6wind.com] > > 2017-03-30 17:15, Jasvinder Singh: > > > In some applications, CRC (Cyclic Redundancy Check) needs to be > > > computed or updated during packet processing operations. This patchset > > > adds software implementation of some common standard CRCs (32-bit > > > Ethernet CRC as per Ethernet/[ISO/IEC 8802-3] and 16-bit CCITT-CRC [ITU-T > > X.25]). > > > Two versions of each 32-bit and 16-bit CRC calculation are proposed. > > > > > > The first version presents a fast and efficient CRC generation on IA > > > processors by using the carry-less multiplication instruction > > > PCLMULQDQ (i.e SSE4.2 instrinsics). In this implementation, a > > > parallelized folding approach has been used to first reduce an > > > arbitrary length buffer to a small fixed size length buffer (16 bytes) with the > > help of precomputed constants. > > > The resultant single 16-bytes chunk is further reduced by Barrett > > > reduction method to generate final CRC value. For more details on the > > > implementation, see reference [1]. > > > > > > The second version presents the fallback solution to support the CRC > > > generation without needing any specific support from CPU (for > > > examples- > > > SSE4.2 intrinsics). It is based on generic Look-Up Table(LUT) > > > algorithm that uses precomputed 256 element table as explained in > > reference[2]. > > > > > > During intialisation, all the data structures required for CRC > > > computation are initialised. Also, x86 specific crc implementation (if > > > supported by the platform) or scalar version is enabled. > > > > As you can see in patchwork, it does not compile on FreeBSD: > > http://dpdk.org/ml/archives/test-report/2017-April/016943.html > > As I stated in the cover letter notes as well that The patchset build fails on clang version earlier than 3.7.0 due to > missing intrinsics and this issue is listed in DPDK known issue section. FreeBSD build on gcc target should work fine. Ah, I have not seen this explanation. However, we cannot let the build fails. It is a blocker for patch admission. Can you, at least, disable the code for some compiler versions?