From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from dpdk.org (dpdk.org [92.243.14.124]) by inbox.dpdk.org (Postfix) with ESMTP id 1DD8AA0597; Thu, 9 Apr 2020 12:31:55 +0200 (CEST) Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id 010B61C219; Thu, 9 Apr 2020 12:31:54 +0200 (CEST) Received: from smtprelay03.ispgateway.de (smtprelay03.ispgateway.de [80.67.31.26]) by dpdk.org (Postfix) with ESMTP id B68741C215 for ; Thu, 9 Apr 2020 12:31:52 +0200 (CEST) Received: from [95.90.46.11] (helo=nb-mweiser.local) by smtprelay03.ispgateway.de with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.92.3) (envelope-from ) id 1jMUTQ-0005UG-9j for dev@dpdk.org; Thu, 09 Apr 2020 12:31:52 +0200 From: Martin Weiser To: "dev@dpdk.org" Autocrypt: addr=martin.weiser@allegro-packets.com; prefer-encrypt=mutual; keydata= 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 MXWMClgW8ybd/hammQ== Message-ID: <57989cfc-21ea-c6ef-cb92-d0e430dd8a50@allegro-packets.com> Date: Thu, 9 Apr 2020 12:31:51 +0200 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.15; rv:68.0) Gecko/20100101 Thunderbird/68.6.0 MIME-Version: 1.0 Content-Language: de-DE X-Df-Sender: bWFydGluLndlaXNlckBhbGxlZ3JvLXBhY2tldHMuY29t Content-Type: text/plain; charset=utf-8 Content-Transfer-Encoding: 7bit X-Content-Filtered-By: Mailman/MimeDel 2.1.15 Subject: [dpdk-dev] net/ixgbe: ixgbe_dev_link_update_share() leaks memory and memory mappings due to not cleaning up pthreads 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" Hi, we recently discovered that our application was not able to create new threads or perform mmaps after some time. With some digging we identified the function ixgbe_dev_link_update_share() to be the reason for this behavior. In the patch "net/ixgbe: fix blocking system events" (819d0d1d57f17aa40321648e99a50b49adc7bdf6) a thread is introduced to run ixgbe_dev_setup_link_thread_handler(). Unfortunately this thread is not detached and just joined (the very last one spawned that is) through ixgbe_dev_cancel_link_thread() upon interface start/stop. When an application repeatedly calls e.g. rte_eth_link_get_nowait() on an ixgbe interface with no link this causes a lot of pthreads never to be cleaned up. Since each thread holds a mmap to the stack this can quite quickly exhaust the allowed number of memory mappings for the process. Best regards, Martin Weiser