From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by dpdk.org (Postfix) with ESMTP id D8E5D1B1BE for ; Wed, 24 Jan 2018 16:39:56 +0100 (CET) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id 8F463226DB; Wed, 24 Jan 2018 10:39:56 -0500 (EST) Received: from frontend1 ([10.202.2.160]) by compute1.internal (MEProxy); Wed, 24 Jan 2018 10:39:56 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=fridaylinux.org; h=cc:date:from:in-reply-to:message-id:references:subject:to :x-me-sender:x-me-sender:x-sasl-enc; s=fm1; bh=TVFwRhh00X/mA0uS2 xTHvy3sHHl6IFZ0gfKi7sy5Jo8=; b=COJOXctZq8GKwZ5uN5kGNuWtsAeYLC0fi wJOzQctcvLlxoph0QL+ZhY6PGNlboUQ/cWDAyxkMdlpsVm+7nHlXTD6pT/tT6Att /FdE0KMv+GcA42mv2xVjZMU+pMrjaCnX66zOiLrIFYvfMIyxSbHvUsTXJ2rpj/vR vERg4Ssi7Z8HUDHkdnT62V8UcM32ouEMAv/z6CW3JNk6Tmhc009Qbq9FMioqYwF/ s3lCdAGPmGPYq10P/my+I6tPKhDvqoOWsqinXlKXwo21VSMEfzesI0TrQ7oOptVv 2opus+il1rAq3/nXY4+6j3XU2ZCiaR9QjVniWammNfSC9W0ZWXpkw== DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:date:from:in-reply-to:message-id :references:subject:to:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=TVFwRhh00X/mA0uS2xTHvy3sHHl6IFZ0gfKi7sy5Jo8=; b=ETR5ZHZv NAhaCp/GjgMN0AnIRUdCZKF6lqsyXyo4MPHOryg8A6w8qRRoj/HhUBYzh7TlwwML tX6beFWV59Q+GuqDZjcGGVUQZqBvvvbAhYW7t4Ls6mUJsQI2cALarkXg7XUtFjVg wrHgJhmX6mhS0PsQ2xT3jEErh4jDqhIbFlKWU6gmQ7rP6EzT5FAZnNG//ZHSb8J7 opAfOaSK9K4UT8F70PxB3xhSJzRibdY1NOzDJ1yHr1jeMH5+mirPh5kfPtd5n999 yPrf1PPQlKvTGiMDMfxor+RQ1gqmJ2DJ143SMDegiFhEekAgz993FqMzRy0pZasu +a5RPFlgOT3/mg== X-ME-Sender: Received: from localhost.localdomain (unknown [115.150.27.206]) by mail.messagingengine.com (Postfix) with ESMTPA id C88B27E3D4; Wed, 24 Jan 2018 10:39:54 -0500 (EST) From: Yuanhan Liu To: Somnath Kotur Cc: Ajit Khaparde , dpdk stable Date: Wed, 24 Jan 2018 23:32:39 +0800 Message-Id: <1516808026-25523-91-git-send-email-yliu@fridaylinux.org> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1516808026-25523-1-git-send-email-yliu@fridaylinux.org> References: <1516808026-25523-1-git-send-email-yliu@fridaylinux.org> Subject: [dpdk-stable] patch 'net/bnxt: free the aggregation ring' has been queued to LTS release 17.11.1 X-BeenThere: stable@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches for DPDK stable branches List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 24 Jan 2018 15:39:57 -0000 Hi, FYI, your patch has been queued to LTS release 17.11.1 Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet. It will be pushed if I get no objections before 01/26/18. So please shout if anyone has objections. Thanks. --yliu --- >>From ceb9a2901d42ab78791d8ba6974c47f1f5e67f51 Mon Sep 17 00:00:00 2001 From: Somnath Kotur Date: Mon, 8 Jan 2018 12:24:36 -0800 Subject: [PATCH] net/bnxt: free the aggregation ring [ upstream commit ed5aab3d3e8745b70c81fb8a0c152ed28acb8d9d ] bnxt_free_all_hwrm_rings() was freeing all the Rx Rings including zero-ing out the memory for the Aggregation rings, but was not issuing the FW cmd to destroy the AGG ring(s) from HW. This would manifest in problems when port stop/port start would be issued as there would be a HW ring leak every time port stop was issued. Fixes: daef48efe5e5 ("net/bnxt: support set MTU") Signed-off-by: Somnath Kotur Signed-off-by: Ajit Khaparde --- drivers/net/bnxt/bnxt_hwrm.c | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/drivers/net/bnxt/bnxt_hwrm.c b/drivers/net/bnxt/bnxt_hwrm.c index 3b93bb5..51b0056 100644 --- a/drivers/net/bnxt/bnxt_hwrm.c +++ b/drivers/net/bnxt/bnxt_hwrm.c @@ -1691,10 +1691,17 @@ int bnxt_free_all_hwrm_rings(struct bnxt *bp) rxr->rx_ring_struct->ring_size * sizeof(*rxr->rx_buf_ring)); rxr->rx_prod = 0; + } + ring = rxr->ag_ring_struct; + if (ring->fw_ring_id != INVALID_HW_RING_ID) { + bnxt_hwrm_ring_free(bp, ring, + HWRM_RING_FREE_INPUT_RING_TYPE_RX); + ring->fw_ring_id = INVALID_HW_RING_ID; memset(rxr->ag_buf_ring, 0, - rxr->ag_ring_struct->ring_size * - sizeof(*rxr->ag_buf_ring)); + rxr->ag_ring_struct->ring_size * + sizeof(*rxr->ag_buf_ring)); rxr->ag_prod = 0; + bp->grp_info[i].ag_fw_ring_id = INVALID_HW_RING_ID; } if (cpr->cp_ring_struct->fw_ring_id != INVALID_HW_RING_ID) { bnxt_free_cp_ring(bp, cpr, idx); -- 2.7.4