From patchwork Fri Apr 7 10:48:57 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Marcin Wojtas X-Patchwork-Id: 23319 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 5549537B2; Fri, 7 Apr 2017 12:41:21 +0200 (CEST) Received: from mail-lf0-f43.google.com (mail-lf0-f43.google.com [209.85.215.43]) by dpdk.org (Postfix) with ESMTP id CAD4E388F for ; Fri, 7 Apr 2017 12:41:17 +0200 (CEST) Received: by mail-lf0-f43.google.com with SMTP id q141so10095514lfe.2 for ; Fri, 07 Apr 2017 03:41:17 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=semihalf-com.20150623.gappssmtp.com; s=20150623; h=from:to:cc:subject:date:message-id:in-reply-to:references; bh=/TENOvssqLr6UOKqPJDiYgemo6c+FSKGqvbWhSR5Ods=; b=sRzpIjrIoAmNaJ89iu9Jd4B+ue9DUfHJgEa7ZyrIbbrwA6EqbbsKqKaGoJmRyoWaug GqFwdj08Rla1i4kEqCOJ73+dWJJtYyNgAicC48+cOlixtZcHTk45sR30zLqGLU/P+D7D gVQpLW6d+oD8jEuXHfufdBRIF4P2MuMFfjRXp5fl2GhV38OZSii8pwuyllAeKXlV+9ai 2bgl9Bti0c5Q6yMM8NqUbdLYg0c8ueQvxDEl7/m685TPzjWDSt/b5btd1Cuu0aPif9tu 0f2YdHTgg1hVrH+zFlu3z+Au1L9bP3BIXZNoUbW2HEdXagFHtUW1OqTCIkd8mJGb2AfZ rckQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=/TENOvssqLr6UOKqPJDiYgemo6c+FSKGqvbWhSR5Ods=; b=AGgKprJ55wXnrqgBr+ZR9k8MPlay+pxOB4RBwJYZ3NngPLlVtvKvzGb6qMCHKZh09o U89C6aXLLmVrowTF8zh2TXeNEcJvvimrJeM+wvAA969yOWWHGB3FdRwpjZLVvGtcGsxK 6EJ61vXRS/ixChOLiZD4Led7/dT10vhk6nWkrIRMxKIPjPjlDVvbX4GsFudfeNI7+i4s Zs3wlOBKEnwAFHIezbqzTD9jG/yCzLbmNhhuJUYK4Gziadop8ZbhRSzneTqfhCBG6yT/ 8qk7A6Dkf4cg8l7HIn1tPKWYg9ynv7MGVTNsQJQJe6AO6gjVTdGIOuWY0lfcuWhgkLX5 hb9A== X-Gm-Message-State: AFeK/H0oMk46zXF3WJJ4gLGWOObDeZssu7C6eyUgikuTX/rOAqn/SORfJVj3Br8tF77W0w== X-Received: by 10.46.9.76 with SMTP id 73mr11513477ljj.42.1491561676966; Fri, 07 Apr 2017 03:41:16 -0700 (PDT) Received: from enkidu.local (31-172-191-173.noc.fibertech.net.pl. [31.172.191.173]) by smtp.gmail.com with ESMTPSA id g3sm873290lfe.34.2017.04.07.03.41.15 (version=TLS1_2 cipher=ECDHE-RSA-AES128-GCM-SHA256 bits=128/128); Fri, 07 Apr 2017 03:41:16 -0700 (PDT) From: Marcin Wojtas To: dev@dpdk.org Cc: jan.medala@outlook.com, jpalider@gmail.com, netanel@amazon.com, evgenys@amazon.com, matua@amazon.com, gtzalik@amazon.com, mw@semihalf.com, mk@semihalf.com Date: Fri, 7 Apr 2017 12:48:57 +0200 Message-Id: <1491562138-2178-4-git-send-email-mw@semihalf.com> X-Mailer: git-send-email 1.8.3.1 In-Reply-To: <1491562138-2178-1-git-send-email-mw@semihalf.com> References: <1491562138-2178-1-git-send-email-mw@semihalf.com> Subject: [dpdk-dev] [PATCH 3/4] net/ena: cleanup if refilling of Rx descriptors fails X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: DPDK patches and discussions List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: dev-bounces@dpdk.org Sender: "dev" From: Michal Krawczyk If wrong number of descriptors for refilling was passed to the Rx repopulate function, there was memory leak which caused memory pool to run out of resources in longer go. In case of fail when refilling Rx descriptors, all additional mbufs have to be released. Fixes: 1173fca25af9 ("ena: add polling-mode driver") Signed-off-by: Michal Krawczyk --- drivers/net/ena/ena_ethdev.c | 2 ++ 1 file changed, 2 insertions(+) diff --git a/drivers/net/ena/ena_ethdev.c b/drivers/net/ena/ena_ethdev.c index d875a2b..54ba5c1 100644 --- a/drivers/net/ena/ena_ethdev.c +++ b/drivers/net/ena/ena_ethdev.c @@ -1172,6 +1172,8 @@ static int ena_populate_rx_queue(struct ena_ring *rxq, unsigned int count) rc = ena_com_add_single_rx_desc(rxq->ena_com_io_sq, &ebuf, next_to_use_masked); if (unlikely(rc)) { + rte_mempool_put_bulk(rxq->mb_pool, (void **)(&mbuf), + count - i); RTE_LOG(WARNING, PMD, "failed adding rx desc\n"); break; }