From patchwork Thu Nov 24 16:03:33 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: =?utf-8?q?N=C3=A9lio_Laranjeiro?= X-Patchwork-Id: 17251 X-Patchwork-Delegate: ferruh.yigit@amd.com 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 3242E58DB; Thu, 24 Nov 2016 17:04:26 +0100 (CET) Received: from mail-wm0-f52.google.com (mail-wm0-f52.google.com [74.125.82.52]) by dpdk.org (Postfix) with ESMTP id 3282B379B for ; Thu, 24 Nov 2016 17:04:04 +0100 (CET) Received: by mail-wm0-f52.google.com with SMTP id a197so119046692wmd.0 for ; Thu, 24 Nov 2016 08:04:04 -0800 (PST) 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:in-reply-to:references :in-reply-to:references; bh=mPlypx6+7gSzzC9cM0TcmeNnkAegqsBvdFY83YFEQqI=; b=ATuIh4ucBetQJmtQw3pzcxzf3/KZzxF37mfkTSXdkhHm3mV5G1fkabJNIKRMma2Pgt ftf/HVn4/p2U1W/bfaPcaMZIAP8izZXR2NjrGlYynTj+dpiKS7Az0Xgx9AUK9ltSVNo4 yawxJvOxY/q9VNWFaFguhVE/oDa1OYyarhDeK5FRmaU0a0TWw4Eqdw75pJ3TibJJYXQp 1IfQhiluYifPJu3sWPrbsET5BfKdbzIstLsiGBYkyL3b1EQQNnCxY2lrRGcuZ+H9Ag0L 6TIykbuTaf4QubFg7WNNzhjFZeYD0wiG7DW1/EhkisTZ5ok9NPS2lM4Zl80H0eGPalgY Rafw== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references:in-reply-to:references; bh=mPlypx6+7gSzzC9cM0TcmeNnkAegqsBvdFY83YFEQqI=; b=YRKDYhD0SIXyn4hUO32RgpZl+0tVK68E0+A4gupHN78xLeHGyRUo0d29l8lds8NljO kQG7mTBNic5bIFXxYcWwHHn5QbeYI2+kotQmdYuDfY5DLJqdSlVgk87gRRqXteQ4GhSd jR9o+md+sak1xRImiE23+JzXSAxf7UcUlmYTtq1JkvxHI1f+o7AIdLFepf0VGNF30Rlr x/5kyxTOcD8Bbucj2crombC5tnVq/GkPrQWfNGVnaQYnbjQAirCCspQmgjYfxrTLIGRu rRTqf/m6O8aF2zKJKcvnVolZBY6p0E3J44lR9E5bAruX6zX5FM9kCV2TDoK+rrdeMRzn 4l9g== X-Gm-Message-State: AKaTC03ukqTK9v1ZSnMg+zlaCof1QuWe4aSxrL2hYDRnDxvQQB2Q/sYTUHGabLGQqeYYaKmF X-Received: by 10.28.221.11 with SMTP id u11mr3203782wmg.123.1480003443851; Thu, 24 Nov 2016 08:04:03 -0800 (PST) Received: from ping.vm.6wind.com (guy78-3-82-239-227-177.fbx.proxad.net. [82.239.227.177]) by smtp.gmail.com with ESMTPSA id vr9sm42495142wjc.35.2016.11.24.08.04.02 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Thu, 24 Nov 2016 08:04:03 -0800 (PST) From: Nelio Laranjeiro To: dev@dpdk.org Cc: Thomas Monjalon , Adrien Mazarguil , stable@dpdk.org Date: Thu, 24 Nov 2016 17:03:33 +0100 Message-Id: <38717f1ef9fd2e2d7eb00505a34c2eae73c35d64.1479995764.git.nelio.laranjeiro@6wind.com> X-Mailer: git-send-email 2.1.4 In-Reply-To: References: In-Reply-To: References: Subject: [dpdk-dev] [PATCH 4/7] net/mlx5: fix missing inline attributes 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" These functions must be forced inline for better performance. Fixes: 99c12dcca65d ("net/mlx5: handle Rx CQE compression") Fixes: 1d88ba171942 ("net/mlx5: refactor Tx data path") Fixes: 67fa62bc672d ("mlx5: support checksum offload") CC: stable@dpdk.org Signed-off-by: Nelio Laranjeiro Acked-by: Adrien Mazarguil --- drivers/net/mlx5/mlx5_rxtx.c | 34 +++++++++++++++++++++++++--------- 1 file changed, 25 insertions(+), 9 deletions(-) diff --git a/drivers/net/mlx5/mlx5_rxtx.c b/drivers/net/mlx5/mlx5_rxtx.c index e161cd9..52733da 100644 --- a/drivers/net/mlx5/mlx5_rxtx.c +++ b/drivers/net/mlx5/mlx5_rxtx.c @@ -71,6 +71,31 @@ #include "mlx5_defs.h" #include "mlx5_prm.h" +static inline int +check_cqe(volatile struct mlx5_cqe *cqe, + unsigned int cqes_n, const uint16_t ci) + __attribute__((always_inline)); + +static inline uint32_t +txq_mp2mr(struct txq *txq, struct rte_mempool *mp) + __attribute__((always_inline)); + +static inline void +mlx5_tx_dbrec(struct txq *txq) __attribute__((always_inline)); + +static inline uint32_t +rxq_cq_to_pkt_type(volatile struct mlx5_cqe *cqe) + __attribute__((always_inline)); + +static inline int +mlx5_rx_poll_len(struct rxq *rxq, volatile struct mlx5_cqe *cqe, + uint16_t cqe_cnt, uint32_t *rss_hash) + __attribute__((always_inline)); + +static inline uint32_t +rxq_cq_to_ol_flags(struct rxq *rxq, volatile struct mlx5_cqe *cqe) + __attribute__((always_inline)); + #ifndef NDEBUG /** @@ -100,11 +125,6 @@ check_cqe_seen(volatile struct mlx5_cqe *cqe) #endif /* NDEBUG */ -static inline int -check_cqe(volatile struct mlx5_cqe *cqe, - unsigned int cqes_n, const uint16_t ci) - __attribute__((always_inline)); - /** * Check whether CQE is valid. * @@ -266,10 +286,6 @@ txq_mb2mp(struct rte_mbuf *buf) return buf->pool; } -static inline uint32_t -txq_mp2mr(struct txq *txq, struct rte_mempool *mp) - __attribute__((always_inline)); - /** * Get Memory Region (MR) <-> Memory Pool (MP) association from txq->mp2mr[]. * Add MP to txq->mp2mr[] if it's not registered yet. If mp2mr[] is full,