Received: by 2002:a05:6a10:6d10:0:0:0:0 with SMTP id gq16csp910611pxb; Fri, 15 Apr 2022 15:05:55 -0700 (PDT) X-Google-Smtp-Source: ABdhPJyw8eOW6g0Yu0U801ufN3pl9XglK7P5pyHvYhFpQngYf+rZJVxQ3FJCBPGgiH4mhlnN5n8m X-Received: by 2002:a05:6402:32aa:b0:41d:9250:d0b7 with SMTP id f42-20020a05640232aa00b0041d9250d0b7mr1153572eda.17.1650060354921; Fri, 15 Apr 2022 15:05:54 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1650060354; cv=none; d=google.com; s=arc-20160816; b=E08ODfUoeflIsIiE0WbW9jWe16Ddy1Wa9dqyXDWHBjyhyZaBA958GLu3llhI0Qw7Ld OJOLMZ7wHCaCj/CwZ189tq3F9MdTf1pzrhhnGVtGKjncBaq77Wukwyo1rV6icXOSF1Yg ZDWfgMdTNYWs7cp5CB0Me8DyWvEzD4R8PwQhjsc6QgrqeCl1/MCIWbWcZgmw98wU+wer oQ1IehxrPIWsfqLg50C7Y9mLyMae53nR7iSX1rkIH8RkoBU7KJvDExoDeOXm0rTtrQMs 4rjLlNwiW4q+XaH9z59uErkOlYXYmh03U4LiPH+A6/Tmd8z6NSslwJ+POtu5KkZB0STv MWFw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:content-transfer-encoding:mime-version :message-id:date:subject:cc:to:from:dkim-signature; bh=ldV1uCjsScyMqnX29S2Mnzm56eDt6Wx9wkmuB11hEfM=; b=AahKzCWfj0TUwlxUfnNL+CWC7q5hMQfDsxu5aurWBHlha6eLv8BWaLrQjener5Oue2 tpF2uIOCOfpnrD7VC0ayMF5zAmvHCYWp12+/pFYp6DkguxQqTMxJxdiuJuPxz04bXJrS uyRkz5URQQIfPJVpTw1R9rkhAG0iZL12oNxu1sf3niW/etf+F+YupbQ5a+eQPX8WX959 JqWzMjzT2m3HrWimUpcvF3vHkgg7gUb/9DKu8VMZ2L8claIgxiS8KhxxnYxnIv3xkUbc DlOoISR+kCoPXbazhXRLra+xIENlAulq1n5SHDkOiwN7w4NkkrLqmFX2b+YRR/3NmMrX TkMA== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b=rDb8Gh4X; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Return-Path: Received: from out1.vger.email (out1.vger.email. [2620:137:e000::1:20]) by mx.google.com with ESMTP id w15-20020a1709064a0f00b006e87b73b8ffsi1691134eju.131.2022.04.15.15.05.29; Fri, 15 Apr 2022 15:05:54 -0700 (PDT) Received-SPF: pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) client-ip=2620:137:e000::1:20; Authentication-Results: mx.google.com; dkim=pass header.i=@bytedance-com.20210112.gappssmtp.com header.s=20210112 header.b=rDb8Gh4X; spf=pass (google.com: domain of linux-kernel-owner@vger.kernel.org designates 2620:137:e000::1:20 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=fail (p=NONE sp=NONE dis=NONE) header.from=bytedance.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1350676AbiDOGrw (ORCPT + 99 others); Fri, 15 Apr 2022 02:47:52 -0400 Received: from lindbergh.monkeyblade.net ([23.128.96.19]:59414 "EHLO lindbergh.monkeyblade.net" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1350731AbiDOGrm (ORCPT ); Fri, 15 Apr 2022 02:47:42 -0400 Received: from mail-pl1-x633.google.com (mail-pl1-x633.google.com [IPv6:2607:f8b0:4864:20::633]) by lindbergh.monkeyblade.net (Postfix) with ESMTPS id 28EF4B0A53 for ; Thu, 14 Apr 2022 23:45:14 -0700 (PDT) Received: by mail-pl1-x633.google.com with SMTP id v12so6492037plv.4 for ; Thu, 14 Apr 2022 23:45:14 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=bytedance-com.20210112.gappssmtp.com; s=20210112; h=from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=ldV1uCjsScyMqnX29S2Mnzm56eDt6Wx9wkmuB11hEfM=; b=rDb8Gh4XiSJ5bCNnQ/GtnJIzx5ChDSHZ4lV22jBcV+F9GyJoIkOE+UWgey1kEpy0gI MTKaFOriP4KbyNke3RHlowF7AzZ8vUNcqA+TwvlHlayovLLg57TbgJXaNYd9fpE64GSZ ABXn/A0Tx029H5JDtT1XMYUFDzq0jEaK9jWxYNCherEopNOslLePPx/F+lrjS9pBVK/A 9dpWjF77ljcGRCaQK7cvGyxJE/KLO5/lQq2+8MwZm4Q9PnjS1vEyAdD7UlP5UuCfx7RW f+X1YiQzmVoG1vIaEQcymb5C98hqfNYIoFZUyzS8Jq2XoPr8jS+wGPmsTLuYAXyggK+m Ji1g== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:date:message-id:mime-version :content-transfer-encoding; bh=ldV1uCjsScyMqnX29S2Mnzm56eDt6Wx9wkmuB11hEfM=; b=n8QBkQbJofYfq+8+AqitDvco/LFRKQnkOXImLSczfOO7rTFeKAJ789hd+nR8+6p2YK G8ccrkBEHAtpnwnuCAPiFVjpSs96dxA+cZA5xmpaSv2I0IOgnyBe05oglV7PIT76BdIQ 8wz2a+ObqKzx4SC4HK7IR7s1mvKXYRyms+DuKv/wTCg9Veouozuw08JH7KLV8CTyHIoL 8V9KQopQo1fuVEXMypF+jEBqKVMKiZj+EHMPKUth7JW//ve+E7B7Q4FYGLwam2Zi7N66 zFd5isRVGDsBWZRinweBhjukHuFZETwLpDMtHL0JQMOrCb+xBgLotRU2Jl3gLMYTh+wY G1BA== X-Gm-Message-State: AOAM533AhmjSDaCfdTS4kQfTtkGZJBYP5CJ+C1upLU+bEZJdg9JvcDkT CRbcIG8oQunsJvtMEllXw3sLew== X-Received: by 2002:a17:902:9309:b0:156:983d:2193 with SMTP id bc9-20020a170902930900b00156983d2193mr49846482plb.158.1650005113570; Thu, 14 Apr 2022 23:45:13 -0700 (PDT) Received: from always-x1.bytedance.net ([61.120.150.70]) by smtp.gmail.com with ESMTPSA id d8-20020a056a00198800b004fab740dbe6sm1867385pfl.15.2022.04.14.23.45.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Thu, 14 Apr 2022 23:45:12 -0700 (PDT) From: zhenwei pi To: arei.gonglei@huawei.com, mst@redhat.com Cc: jasowang@redhat.com, herbert@gondor.apana.org.au, linux-kernel@vger.kernel.org, virtualization@lists.linux-foundation.org, linux-crypto@vger.kernel.org, helei.sig11@bytedance.com, davem@davemloft.net, zhenwei pi Subject: [PATCH 0/4] virtio-crypto: Improve performance Date: Fri, 15 Apr 2022 14:41:32 +0800 Message-Id: <20220415064136.304661-1-pizhenwei@bytedance.com> X-Mailer: git-send-email 2.25.1 MIME-Version: 1.0 Content-Transfer-Encoding: 8bit X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_NONE, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on lindbergh.monkeyblade.net Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi, The main point of this series is to improve the performance for virtio crypto: - Use wait mechanism instead of busy polling for ctrl queue, this reduces CPU and lock racing, it's possiable to create/destroy session parallelly, QPS increases from ~40K/s to ~200K/s. - Enable retry on crypto engine to improve performance for data queue, this allows the larger depth instead of 1. - Fix dst data length in akcipher service. - Other style fix. lei he (2): virtio-crypto: adjust dst_len at ops callback virtio-crypto: enable retry for virtio-crypto-dev zhenwei pi (2): virtio-crypto: wait ctrl queue instead of busy polling virtio-crypto: move helpers into virtio_crypto_common.c drivers/crypto/virtio/Makefile | 1 + .../virtio/virtio_crypto_akcipher_algs.c | 92 ++++++------ drivers/crypto/virtio/virtio_crypto_common.c | 92 ++++++++++++ drivers/crypto/virtio/virtio_crypto_common.h | 25 +++- drivers/crypto/virtio/virtio_crypto_core.c | 37 +---- .../virtio/virtio_crypto_skcipher_algs.c | 134 ++++++++---------- 6 files changed, 222 insertions(+), 159 deletions(-) create mode 100644 drivers/crypto/virtio/virtio_crypto_common.c -- 2.20.1