From patchwork Fri Oct 30 18:55:17 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Adrien Mazarguil X-Patchwork-Id: 8478 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [IPv6:::1]) by dpdk.org (Postfix) with ESMTP id 6DC7093C4; Fri, 30 Oct 2015 19:56:49 +0100 (CET) Received: from mail-wi0-f179.google.com (mail-wi0-f179.google.com [209.85.212.179]) by dpdk.org (Postfix) with ESMTP id 16F839256 for ; Fri, 30 Oct 2015 19:56:26 +0100 (CET) Received: by wicfv8 with SMTP id fv8so16790915wic.0 for ; Fri, 30 Oct 2015 11:56:26 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=6wind_com.20150623.gappssmtp.com; s=20150623; h=from:to:subject:date:message-id:in-reply-to:references; bh=qI72+y+bJ1ubaGh3zba7iuZe45IJshTWJf+UH33RQs4=; b=ESKl25WIuuC6te+aG4R+sTJPhhmmmlnjzvbn6nk1sR1oNSMQYy9N4e46OHtoilrWPN 8zTOz6fdl+QfyYxjNy5Jq6tl4A9SIROAABnS4UFNEwjM+IAA+LU81S/9g2G4YZRiEgQR D1SHj1JVb1hjupeO7Vm3iMmMjRelpgCrA23vnCbz8aomUC691ZO8lEHo08VXlgPvIWS5 qfKj3zCCb20Uv9r6IGub9KGJ6iwYLJT2uZ9THMe4pnFrLvaxb/yIO2MskBBkNFXhWzee xCG9h+Y9ue9By2JzWqUj5pV5GJNgTuwsJhuIj70ox2LJ/oZcl58AK0m6SBZcPAbs5GiD n7cQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:subject:date:message-id:in-reply-to :references; bh=qI72+y+bJ1ubaGh3zba7iuZe45IJshTWJf+UH33RQs4=; b=VJY4mnHfYpjp479DHNhL9QU/lmofFFh6WVNxYwWh/EGbAumqqtVDNNg6AFyVs3OulU leamjpm443PbuSGZFLnZkzIH0DqZL8A+TG2s4RHosto/aaDzPYZnti+03pq1xwIihbai GfPCbTbB+08dzPYYNBC6P3zZ1oAsguPPK9Ce/s6jWRZ7Gva/ULCJCy9j0AhEjWmR2FQM r2o/7Mqn1AQ17T61DFxtcaSUD2m1DoHMRCRrxULJ1tfiyB9osogoPV9obxf7ktyrw0mJ f7ul1ohD3Mh7/AI1dNj1TOvrYfa+9YmAqBJibUbWnPGdBg41F5A6dSCbM7gY0G79KwMc gRdg== X-Gm-Message-State: ALoCoQlN3kbtfbXOo24WYP53m9iMSB+F/4p6GPoEhENTUdTnrcV15lSaEjd9yvVQ9UI8H68+9i56 X-Received: by 10.194.78.162 with SMTP id c2mr9922221wjx.112.1446231385969; Fri, 30 Oct 2015 11:56:25 -0700 (PDT) Received: from 6wind.com (guy78-3-82-239-227-177.fbx.proxad.net. [82.239.227.177]) by smtp.gmail.com with ESMTPSA id iw8sm8411999wjb.5.2015.10.30.11.56.22 for (version=TLSv1.2 cipher=RC4-SHA bits=128/128); Fri, 30 Oct 2015 11:56:23 -0700 (PDT) From: Adrien Mazarguil To: dev@dpdk.org Date: Fri, 30 Oct 2015 19:55:17 +0100 Message-Id: <1446231319-8185-15-git-send-email-adrien.mazarguil@6wind.com> X-Mailer: git-send-email 2.1.0 In-Reply-To: <1446231319-8185-1-git-send-email-adrien.mazarguil@6wind.com> References: <1444067692-29645-1-git-send-email-adrien.mazarguil@6wind.com> <1446231319-8185-1-git-send-email-adrien.mazarguil@6wind.com> Subject: [dpdk-dev] [PATCH v2 14/16] mlx5: enable multi packet send WR in TX CQ X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" For adapters that support it, this flag improves performance outside of VF context. Signed-off-by: Adrien Mazarguil --- drivers/net/mlx5/Makefile | 5 +++++ drivers/net/mlx5/mlx5_txq.c | 7 +++++++ 2 files changed, 12 insertions(+) diff --git a/drivers/net/mlx5/Makefile b/drivers/net/mlx5/Makefile index 2f9f2b8..ae568e6 100644 --- a/drivers/net/mlx5/Makefile +++ b/drivers/net/mlx5/Makefile @@ -120,6 +120,11 @@ mlx5_autoconf.h: $(RTE_SDK)/scripts/auto-config-h.sh HAVE_FLOW_SPEC_IPV6 \ infiniband/verbs.h \ type 'struct ibv_exp_flow_spec_ipv6' $(AUTOCONF_OUTPUT) + $Q sh -- '$<' '$@' \ + HAVE_EXP_QP_BURST_CREATE_ENABLE_MULTI_PACKET_SEND_WR \ + infiniband/verbs.h \ + enum IBV_EXP_QP_BURST_CREATE_ENABLE_MULTI_PACKET_SEND_WR \ + $(AUTOCONF_OUTPUT) mlx5.o: mlx5_autoconf.h diff --git a/drivers/net/mlx5/mlx5_txq.c b/drivers/net/mlx5/mlx5_txq.c index a53b128..aa7581f 100644 --- a/drivers/net/mlx5/mlx5_txq.c +++ b/drivers/net/mlx5/mlx5_txq.c @@ -395,6 +395,13 @@ txq_setup(struct rte_eth_dev *dev, struct txq *txq, uint16_t desc, .intf_scope = IBV_EXP_INTF_GLOBAL, .intf = IBV_EXP_INTF_QP_BURST, .obj = tmpl.qp, +#ifdef HAVE_EXP_QP_BURST_CREATE_ENABLE_MULTI_PACKET_SEND_WR + /* Multi packet send WR can only be used outside of VF. */ + .family_flags = + (!priv->vf ? + IBV_EXP_QP_BURST_CREATE_ENABLE_MULTI_PACKET_SEND_WR : + 0), +#endif }; tmpl.if_qp = ibv_exp_query_intf(priv->ctx, &attr.params, &status); if (tmpl.if_qp == NULL) {