From patchwork Tue Oct 9 22:33:32 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Thomas Monjalon X-Patchwork-Id: 46444 Return-Path: X-Original-To: patchwork@dpdk.org Delivered-To: patchwork@dpdk.org Received: from [92.243.14.124] (localhost [127.0.0.1]) by dpdk.org (Postfix) with ESMTP id AE6291B209; Wed, 10 Oct 2018 00:33:44 +0200 (CEST) Received: from out3-smtp.messagingengine.com (out3-smtp.messagingengine.com [66.111.4.27]) by dpdk.org (Postfix) with ESMTP id 171F91B1D3 for ; Wed, 10 Oct 2018 00:33:43 +0200 (CEST) Received: from compute1.internal (compute1.nyi.internal [10.202.2.41]) by mailout.nyi.internal (Postfix) with ESMTP id A89DB21FE9; Tue, 9 Oct 2018 18:33:42 -0400 (EDT) Received: from mailfrontend2 ([10.202.2.163]) by compute1.internal (MEProxy); Tue, 09 Oct 2018 18:33:42 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=monjalon.net; h= from:to:cc:subject:date:message-id:in-reply-to:references :mime-version:content-transfer-encoding; s=mesmtp; bh=bB8liuQSz2 rfSHCU0nGaW0IBwitrh0V3I2rswV7C0N0=; b=SrIPHyy3Pn43EkBOv5SWBSWFko +w16NtPXISxqqrj+0+IWTj7BmsTPabpdfugJHm5uC9DLGZk4XnoKcsbJWwlHJSOG u7PbOVxI71mwlffHwa94UQTZG+ZNLzJXrvaaFF9BDay+2Rf2pUpUhA4yN4jGxUVe qdASC4mIZHMXRarT8= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=cc:content-transfer-encoding:date:from :in-reply-to:message-id:mime-version:references:subject:to :x-me-proxy:x-me-proxy:x-me-sender:x-me-sender:x-sasl-enc; s= fm1; bh=bB8liuQSz2rfSHCU0nGaW0IBwitrh0V3I2rswV7C0N0=; b=YMBb3pvD x11IbXPVSlrR0Yea2V3bDjZJox0kMv8Tysp92VUOK8F5tfinjwcoyVKzdREc2BER 2AjJs1Gn+nw2zTvCrTWJOp7ifHRcf9EDQ8StMaQVIRQtNs6U4d9RpJPisIyHAtuo EWDJkhpzNrGfQz67LPxcCsH7r27JRekHknNQ88eOyiCUU0r9PhgqvhV5DvHgdiT1 iJd5EeAQ7ruW+FN3j0WT8ai8pykCGG6Uetz9xu4ctLq32UvtkYj5zfulYSAHVv7L l+svULby9wXIduCIWHxpmcFtUmu0H4Rh7rSgSBxmH4h0xCuyZlyjm0fKVTnCvSy/ PtIy79EJi/jeKA== X-ME-Sender: X-ME-Proxy: Received: from xps.monjalon.net (184.203.134.77.rev.sfr.net [77.134.203.184]) by mail.messagingengine.com (Postfix) with ESMTPA id D80FC102DD; Tue, 9 Oct 2018 18:33:40 -0400 (EDT) From: Thomas Monjalon To: dev@dpdk.org Cc: gaetan.rivet@6wind.com, ophirmu@mellanox.com, ferruh.yigit@intel.com, arybchenko@solarflare.com Date: Wed, 10 Oct 2018 00:33:32 +0200 Message-Id: <20181009223338.18307-1-thomas@monjalon.net> X-Mailer: git-send-email 2.19.0 In-Reply-To: <20181007222554.4886-1-thomas@monjalon.net> References: <20181007222554.4886-1-thomas@monjalon.net> MIME-Version: 1.0 Subject: [dpdk-dev] [PATCH v4 0/6] replace attach/detach functions 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" The functions for EAL attach/detach had already some replacements, so they are removed. The functions for ethdev attach/detach are removed and replaced thanks to a new ethdev iterator working with devargs. rte_eth_dev_attach(devargs, &port_id) is replaced by: rte_dev_probe(devargs); RTE_ETH_FOREACH_MATCHING_DEV(port_id, devargs, &iterator) { do what you want with the new port_id } The biggest benefit is to be able to manage devargs string matching several ports to probe. Depends on: https://patches.dpdk.org/project/dpdk/list/?series=1676 Depends on: https://patches.dpdk.org/project/dpdk/list/?series=1734 Depends on: https://patches.dpdk.org/patch/46443/ Changes in v4: - fix compilation (due to stricter checks in v3) Changes in v3 - after Andrew's review: - coding rules compliance - stricter checks for snprintf - rte_eth_iterator_free() becomes rte_eth_iterator_cleanup() - add rte_eth_iterator_cleanup in .map Changes in v2 - after Andrew's review: - return only 0 or -1 in vdev_dev_match() - fix freeing of strings in the iterator - add rte_eth_iterator_free() - tolerate extra parameters from old syntax - add more comments - separate contributing guide patch Thomas Monjalon (6): bus/vdev: add iteration filter on name ethdev: add iterator to match devargs input ethdev: allow iterating with pure class filter doc: replace doxygen example in contribution guide ethdev: remove deprecated attach/detach functions eal: remove deprecated attach/detach functions app/test-pmd/testpmd.c | 19 +- doc/guides/contributing/documentation.rst | 15 +- doc/guides/prog_guide/index.rst | 1 - .../prog_guide/port_hotplug_framework.rst | 106 --------- doc/guides/rel_notes/deprecation.rst | 12 - doc/guides/rel_notes/release_18_11.rst | 14 +- drivers/bus/vdev/vdev_params.c | 19 +- drivers/net/virtio/virtio_user_ethdev.c | 1 - lib/librte_eal/common/eal_common_dev.c | 53 ----- lib/librte_eal/common/include/rte_common.h | 6 + lib/librte_eal/common/include/rte_dev.h | 27 --- lib/librte_eal/rte_eal_version.map | 2 - lib/librte_ethdev/Makefile | 2 +- lib/librte_ethdev/ethdev_private.c | 10 +- lib/librte_ethdev/ethdev_private.h | 6 + lib/librte_ethdev/meson.build | 2 +- lib/librte_ethdev/rte_class_eth.c | 9 +- lib/librte_ethdev/rte_ethdev.c | 223 +++++++++++------- lib/librte_ethdev/rte_ethdev.h | 110 ++++++--- lib/librte_ethdev/rte_ethdev_version.map | 5 +- 20 files changed, 304 insertions(+), 338 deletions(-) delete mode 100644 doc/guides/prog_guide/port_hotplug_framework.rst