Received: by 2002:a05:7412:31a9:b0:e2:908c:2ebd with SMTP id et41csp4138096rdb; Thu, 14 Sep 2023 13:00:22 -0700 (PDT) X-Google-Smtp-Source: AGHT+IG3obVUyx4WEuLHpaTQNw+Ay2Nu60+rauD4tr2kw7Rq3XcihXusd2sWR/Ia1YlNwImgWP1d X-Received: by 2002:a17:902:ecc8:b0:1c0:ec66:f2b2 with SMTP id a8-20020a170902ecc800b001c0ec66f2b2mr8888625plh.27.1694721622106; Thu, 14 Sep 2023 13:00:22 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1694721622; cv=none; d=google.com; s=arc-20160816; b=q9dTDU8fyELUPxdnlESR5tCUIZXXJugvPv/ApnBOfKM06Chq0F2tAnHM3Cy07bjWrs v7EYsiu9fXkTw5oLaxzZJkaNpkHh5bjAUhEJrXEpjHt0YIu/p1p7tyeFS+Fz9dHjmt39 3pAJAdQCGPYucwVGtfjIrNx0OXHQ91yMKhc8d3rQQNs+YpXQn3bXRJVVTBLLuBOdVUiB s6FsgF5KsfhwbSdGjoViGpCN053iUTd4Xu6b3NBTbSDxkFFoudnzXtqPE+cWBpchja0+ mfiTZphwcVHfwSS2DMwU4HQvdoSguMgib0JUjsnUnNUR0j1gITUcils2r9h2yxPmoGvm SrTg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:in-reply-to:content-disposition:mime-version :references:message-id:subject:cc:to:from:date:dkim-signature; bh=Jq2pj3vNh3ov1lqVemerrvtZo/V9/5ZCRIvFVvmuS5o=; fh=bvhDn24zxcLH387OvTNBXhWDApdnekjpaYVshFKRSYc=; b=wexn81bMIRHZlLPfDaE6nRu+WiEAjxynMXMuqqhpYjYL+hA1Z8mEHQTCW04/7u0gHT 340rgjSrJzNhgcxiQZCkbBMO02xju2x8K0tAtPsDobsqaKjGjTsQ3rN7W7so4LmejZwI 2aHpX9ClcjeCXhsQo/DeFKkvyBkHYgS/GuMkIWlkcrB62jHoXRNZ9DmltIP8UHXvwn2Y ZtY/jgoMWFmiutps49fs8GcT98dlfb6sEVHhtz0Wl5LfYIFTG31yZ7zy1G/XmE0pWFLk 7ayTedMC5snI0DDrdf5O5uugSMipZdC3XljYzATAUJyLKMPMaf1KxANO63YKLyyJylxk xB5Q== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@rivosinc-com.20230601.gappssmtp.com header.s=20230601 header.b=ib8u2RF6; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from groat.vger.email (groat.vger.email. [23.128.96.35]) by mx.google.com with ESMTPS id p12-20020a170902c70c00b001b89ecd8e66si2037753plp.188.2023.09.14.13.00.21 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 14 Sep 2023 13:00:22 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) client-ip=23.128.96.35; Authentication-Results: mx.google.com; dkim=pass header.i=@rivosinc-com.20230601.gappssmtp.com header.s=20230601 header.b=ib8u2RF6; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 23.128.96.35 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: from out1.vger.email (depot.vger.email [IPv6:2620:137:e000::3:0]) by groat.vger.email (Postfix) with ESMTP id 946848373A25; Thu, 14 Sep 2023 10:29:28 -0700 (PDT) X-Virus-Status: Clean X-Virus-Scanned: clamav-milter 0.103.10 at groat.vger.email Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S237398AbjINR30 (ORCPT + 99 others); Thu, 14 Sep 2023 13:29:26 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:48714 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S231419AbjINR3Z (ORCPT ); Thu, 14 Sep 2023 13:29:25 -0400 Received: from mail-pf1-x429.google.com (mail-pf1-x429.google.com [IPv6:2607:f8b0:4864:20::429]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id C3C4B1FF0 for ; Thu, 14 Sep 2023 10:29:21 -0700 (PDT) Received: by mail-pf1-x429.google.com with SMTP id d2e1a72fcca58-68fac346f6aso1083747b3a.3 for ; Thu, 14 Sep 2023 10:29:21 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=rivosinc-com.20230601.gappssmtp.com; s=20230601; t=1694712561; x=1695317361; darn=vger.kernel.org; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:from:to:cc:subject:date:message-id:reply-to; bh=Jq2pj3vNh3ov1lqVemerrvtZo/V9/5ZCRIvFVvmuS5o=; b=ib8u2RF63yvQM87+8A2339BRCaw6AOlI12wWM2FA8fSJwG7c0Vd8sJvVAkDuPN3vr0 23SmBpWx6ZYubavqdojxKgY1UX49w++9OBm4IkD+z4ciBeYKkTRo5QiU0cgvRz9VqoFR OteuLWLyyxb/G1+dqWzyu+VZQLr/rxetVXZ4s3Mk3HdxJRyVZA3vumfW/uzfKHIAi565 BKE8vDUz7NOZoUPhfphQj6ujDsYew5ZDusmQpAgqNYGYo9N7yb02ToUV5Bs3l3Gznr8P 3DshY8NBxyqWC/bGbTLoSEkfD5//wG7/u4Z0ObX0EkyWzJF08AIzk/bBlWDkbj7TUnOY 6XoQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20230601; t=1694712561; x=1695317361; h=in-reply-to:content-disposition:mime-version:references:message-id :subject:cc:to:from:date:x-gm-message-state:from:to:cc:subject:date :message-id:reply-to; bh=Jq2pj3vNh3ov1lqVemerrvtZo/V9/5ZCRIvFVvmuS5o=; b=jEDVSlYA94KwKwnXhWXSOq21KN+MNsU450vsnax83Vxf+MpnC4hJhADM2C6NFTWi84 aLIOkmcTEuGvtDnBMH4at4QyCpmQpCZOB8fE0h747sK1b4mstJAo71ITgINevT1cvLz2 8D6UqjT1I05n6QKYP0/+DpgTZ2RbZS+lX9a7cDLkfp4Hl6I7d52H+XdxfTDeq6Ulwcxn nutW32mn/YYqQVRVsMW7ZysTCymoJO2of4pqppCESGPAf9CAJX7OGTTizHiXHrNaSWRI ha6xu433Cgztc1qQLWuT6DhvBv6/RjAkqRkHyxMwEZlF0YGxar7SBhZzC8/XCZ2UmUa/ kH4A== X-Gm-Message-State: AOJu0YyeEhzdvdDheVr9IS3UvyuBQ959AXrLeTpu503zghQqudcNX3LT eEB+D2ZGTYGsszDodX5hod5MtQ== X-Received: by 2002:a05:6a00:248a:b0:68c:dcc:3578 with SMTP id c10-20020a056a00248a00b0068c0dcc3578mr6755649pfv.25.1694712561275; Thu, 14 Sep 2023 10:29:21 -0700 (PDT) Received: from ghost ([50.168.177.76]) by smtp.gmail.com with ESMTPSA id d21-20020aa78695000000b006889511ab14sm1582547pfo.37.2023.09.14.10.29.20 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 14 Sep 2023 10:29:20 -0700 (PDT) Date: Thu, 14 Sep 2023 13:29:18 -0400 From: Charlie Jenkins To: Conor Dooley Cc: Conor Dooley , Palmer Dabbelt , Samuel Holland , David Laight , linux-riscv@lists.infradead.org, linux-kernel@vger.kernel.org, Paul Walmsley , Albert Ou Subject: Re: [PATCH v4 4/5] riscv: Vector checksum library Message-ID: References: <20230911-optimize_checksum-v4-0-77cc2ad9e9d7@rivosinc.com> <20230911-optimize_checksum-v4-4-77cc2ad9e9d7@rivosinc.com> <20230914-pennant-obligate-db3adf056281@wendy> <20230914-hardiness-uninjured-6818bfb40b4f@spud> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <20230914-hardiness-uninjured-6818bfb40b4f@spud> Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org X-Greylist: Sender passed SPF test, not delayed by milter-greylist-4.6.4 (groat.vger.email [0.0.0.0]); Thu, 14 Sep 2023 10:29:28 -0700 (PDT) X-Spam-Status: No, score=2.8 required=5.0 tests=DKIM_SIGNED,DKIM_VALID, HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,RCVD_IN_SBL_CSS, SPF_HELO_NONE,SPF_PASS autolearn=no autolearn_force=no version=3.4.6 X-Spam-Level: ** X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on groat.vger.email On Thu, Sep 14, 2023 at 05:29:29PM +0100, Conor Dooley wrote: > On Thu, Sep 14, 2023 at 12:14:16PM -0400, Charlie Jenkins wrote: > > On Thu, Sep 14, 2023 at 01:46:29PM +0100, Conor Dooley wrote: > > > On Mon, Sep 11, 2023 at 03:57:14PM -0700, Charlie Jenkins wrote: > > > > This patch is not ready for merge as vector support in the kernel is > > > > limited. However, the code has been tested in QEMU so the algorithms > > > > do work. This code requires the kernel to be compiled with C vector > > > > support, but that is not yet possible. It is written in assembly > > > > rather than using the GCC vector instrinsics because they did not > > > > provide optimal code. > > > > > > > > Signed-off-by: Charlie Jenkins > > > > --- > > > > arch/riscv/lib/csum.c | 92 +++++++++++++++++++++++++++++++++++++++++++++++++++ > > > > 1 file changed, 92 insertions(+) > > > > > > > > diff --git a/arch/riscv/lib/csum.c b/arch/riscv/lib/csum.c > > > > index 47d98c51bab2..eb4596fc7f5b 100644 > > > > --- a/arch/riscv/lib/csum.c > > > > +++ b/arch/riscv/lib/csum.c > > > > @@ -12,6 +12,10 @@ > > > > > > > > #include > > > > > > > > +#ifdef CONFIG_RISCV_ISA_V > > > > +#include > > > > > > What actually includes this header, I don't see it in either Andy's > > > in-kernel vector series or Bjorn's blake2 one. > > > Can you link to the pre-requisites in your cover letter please. > > > > > > Thanks, > > > Conor. > > > > It is defined here: > > https://github.com/riscv-non-isa/rvv-intrinsic-doc/blob/main/doc/rvv-intrinsic-spec.adoc. > > The header is for the vector intrinsics that are supported by llvm and > > gcc. > > Well, whatever you're doing with it does not work, producing 3600 or so > fatal errors during compilation, all saying: > ../arch/riscv/include/asm/checksum.h:14:10: fatal error: riscv_vector.h: No such file or directory > > Do you have some makefile hack somewhere that's not part of this > patchset? Also, I'm dumb, but can you show me where are the actual > intrinsics are being used in this patch anyway? I just seem some > types & asm. > > Thanks, > Conor. > Intrinsics are needed for the vector types. Vector types are needed to get the inline asm to select vector registers at compile time. I could manually select vector registers to use but that is not ideal. In order to get this to work, vector has to be enabled in the compiler. This patch will not compile right now, but since people are working on vector I was hoping that it would be possible in the future. Palmer recommended that I just put up this patch for now since I had the code, but only the non-vector versions should be candidates for release for now. - Charlie