From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm0-f41.google.com (mail-wm0-f41.google.com [74.125.82.41]) by dpdk.org (Postfix) with ESMTP id EB6A69E3 for ; Tue, 11 Apr 2017 17:45:03 +0200 (CEST) Received: by mail-wm0-f41.google.com with SMTP id t189so4281972wmt.1 for ; Tue, 11 Apr 2017 08:45:03 -0700 (PDT) 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; bh=+GzK3rTAEIXKRRYvB8bQ3dlqZiSnSCHzIoIb35Cdxtc=; b=MwLpayOMSMU+ddyUW2DUyuIi88PRl/C1EJDI9rnyoUtor+gdFAcCUQ6vXfBTa0DOxm MnrRmXypeqckebTOFZ9743h++R19rjxWR69RrSOzND/wbIM8xWLfMcbcMg2CW2U02YGU 0A9IE0wxog03DI3sjNHvoDZJg5eOtkKCd68Lswq51zRQjQu9EqAOzHbxwHYQTSdnDCXS qNNXRveF78tVViIIomIs9YgnE/XmplhbgGQKLj/9nPrGgLabhISpogdQlHDqewYK4B7g o+LChHleORXtcBztfT1ewccyOOVh2nAHke0ZshmzAcOnF5+eKgk1Y8qznlH+4eSp4ejS tyOA== 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=+GzK3rTAEIXKRRYvB8bQ3dlqZiSnSCHzIoIb35Cdxtc=; b=FejMa/B3ySA3lerV0JbrU/koWn/NLOirsUcoUZMPG+PgAIgWHs5m/ZqATZyHSEmBCf lKoW5D/XSYK+cZENSW2fb1Lte94hSJuneurg2ZLikFIEjT5emQ/vA5XjK0Y0clFJUia7 +xvZ3/vQhgm9AQQhMn496JHgjrN+s4nGCueUrdXcpqaMLCnni3Z9m0sUtrZSdEgdfb9v PLc3buhm1rVJ7A8HAcD+HdUTdacsRzXIX0rX7UpT6khK60ycijRxK5KbVdEgzIPDaWPQ R7h+jOqaGLnqAclv9bSs6vAR2wcbn0zINDjEPivbz9A2b2Soj9oeVY1LYyaAF9buHVnY phCA== X-Gm-Message-State: AN3rC/4G9QO6VcREpgdg1GRqL7kOi+Yu7wOQ/FtuSrwdrxavV7Q8VLpPijdsQSo3PrR22tGY X-Received: by 10.28.103.84 with SMTP id b81mr14428324wmc.124.1491925503192; Tue, 11 Apr 2017 08:45:03 -0700 (PDT) Received: from bidouze.dev.6wind.com (host.78.145.23.62.rev.coltfrance.com. [62.23.145.78]) by smtp.gmail.com with ESMTPSA id u63sm2933738wmu.22.2017.04.11.08.45.02 (version=TLS1_2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Tue, 11 Apr 2017 08:45:02 -0700 (PDT) From: Gaetan Rivet To: dev@dpdk.org Cc: Jan Blunck Date: Tue, 11 Apr 2017 17:44:07 +0200 Message-Id: X-Mailer: git-send-email 2.1.4 In-Reply-To: <1488794430-25179-1-git-send-email-jblunck@infradead.org> References: <1488794430-25179-1-git-send-email-jblunck@infradead.org> Subject: [dpdk-dev] [PATCH v2 00/42] Remove struct eth_driver 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: , X-List-Received-Date: Tue, 11 Apr 2017 15:45:04 -0000 I rebased the following work of Jan: This series is removing the PCI specific struct eth_driver from rte_ether. The PCI drivers are changed to use the newly introduced header-only helpers instead. Although the virtual drivers did not make use of the ethdev's driver field they are converted to use the VDEV specific allocation helpers. The motivation for this change is to properly embed a reference to the generic rte_device in the ethdev. The series is based on: * http://dpdk.org/dev/patchwork/patch/20416/ * http://dpdk.org/dev/patchwork/patch/20417/ * The "Rework vdev probing to use rte_bus infrastructure" series * http://dpdk.org/dev/patchwork/patch/21058/ Changes in v2: * Removed the patch "net/vmxnet3: use library function for DMA zone reserve" It is essentially duplicating the following commit: 04df93d1edac ("net/vmxnet3: fix queue size changes") * Fixed header includes for mlx4 and mlx5 PMD * Followed the changes of the series for new PMDs (AVP, liquidio) * Made KNI use the new API * Made PCAP use the new API * Fixed undefined behavior on vdev driver arg parsing * Fixed virtual_pmd for unit test Gaetan Rivet (5): net/kni: use ethdev allocation helper for virtual devices net/pcap: use ethdev allocation helper for virtual devices net/avp: Don't use eth_driver net/liquidio: Don't use eth_driver test: remove unused ethdev driver Jan Blunck (37): eal: add name field to generic device eal: parse "driver" device argument before probing drivers net/nfp: use library function for DMA zone reserve ether: add allocation helper for virtual drivers net/tap: use ethdev allocation helper for virtual devices net/vhost: use ethdev allocation helper for virtual devices net/virtio: use ethdev allocation helper for virtual devices net/af_packet: use ethdev allocation helper for virtual devices app/test: don't short-circuit null device creation net/null: internalize eth_dev_null_create() net/null: use ethdev allocation helper for virtual devices net/bonding: make bonding API call through EAL on create/free net/bonding: use ethdev allocation helper for virtual devices ethdev: add PCI driver helpers net/virtio: Don't use eth_driver net/bnx2x: Don't use eth_driver net/bnxt: Don't use eth_driver net/cxgbe: Don't use eth_driver net/em: Don't use eth_driver net/igb: Don't use eth_driver net/ena: Don't use eth_driver net/enic: Don't use eth_driver net/fm10k: Don't use eth_driver net/i40e: Don't use eth_driver net/i40evf: Don't use eth_driver net/ixgbe: Don't use eth_driver net/mlx: Don't reference eth_driver net/nfp: Don't use eth_driver net/qede: Don't use eth_driver net/sfc: Don't use eth_driver net/szedata2: Don't use eth_driver net/thunderx: Don't use eth_driver net/vmxnet3: Don't use eth_driver ethdev: remove unused ethdev PCI probe/remove ethdev: remove unused ethdev driver ethdev: remove PCI specific helper from generic ethdev header ethdev: don't include PCI header drivers/net/af_packet/rte_eth_af_packet.c | 42 +++---- drivers/net/avp/avp_ethdev.c | 43 +++++-- drivers/net/bnx2x/bnx2x_ethdev.c | 64 ++++++---- drivers/net/bnx2x/bnx2x_rxtx.c | 2 +- drivers/net/bnxt/bnxt_ethdev.c | 36 ++++-- drivers/net/bonding/rte_eth_bond_api.c | 171 ++++---------------------- drivers/net/bonding/rte_eth_bond_args.c | 2 +- drivers/net/bonding/rte_eth_bond_pmd.c | 160 +++++++++++++++++++++++-- drivers/net/cxgbe/cxgbe_ethdev.c | 29 +++-- drivers/net/cxgbe/cxgbe_main.c | 2 +- drivers/net/cxgbe/sge.c | 6 +- drivers/net/e1000/em_ethdev.c | 30 +++-- drivers/net/e1000/igb_ethdev.c | 60 ++++++---- drivers/net/ena/ena_ethdev.c | 29 +++-- drivers/net/enic/enic_ethdev.c | 29 +++-- drivers/net/fm10k/fm10k_ethdev.c | 30 +++-- drivers/net/i40e/i40e_ethdev.c | 36 +++--- drivers/net/i40e/i40e_ethdev_vf.c | 31 +++-- drivers/net/i40e/i40e_fdir.c | 2 +- drivers/net/ixgbe/ixgbe_ethdev.c | 66 +++++++---- drivers/net/kni/rte_eth_kni.c | 39 +++--- drivers/net/liquidio/lio_ethdev.c | 44 +++++-- drivers/net/mlx4/mlx4.c | 24 ++-- drivers/net/mlx5/mlx5.c | 24 ++-- drivers/net/nfp/nfp_net.c | 59 ++++----- drivers/net/null/Makefile | 7 +- drivers/net/null/rte_eth_null.c | 55 +++------ drivers/net/null/rte_eth_null.h | 40 ------- drivers/net/null/rte_pmd_null_version.map | 7 -- drivers/net/pcap/rte_eth_pcap.c | 62 +++++----- drivers/net/qede/qede_ethdev.c | 60 ++++++---- drivers/net/qede/qede_ethdev.h | 1 + drivers/net/ring/rte_eth_ring.c | 1 - drivers/net/sfc/sfc_ethdev.c | 34 ++++-- drivers/net/szedata2/rte_eth_szedata2.c | 29 +++-- drivers/net/tap/rte_eth_tap.c | 38 ++---- drivers/net/thunderx/nicvf_ethdev.c | 29 +++-- drivers/net/vhost/rte_eth_vhost.c | 54 ++++----- drivers/net/virtio/virtio_ethdev.c | 34 ++++-- drivers/net/virtio/virtio_user_ethdev.c | 20 +--- drivers/net/vmxnet3/vmxnet3_ethdev.c | 30 +++-- lib/librte_eal/bsdapp/eal/eal_pci.c | 3 + lib/librte_eal/common/eal_common_dev.c | 3 + lib/librte_eal/common/eal_common_vdev.c | 53 ++++++++- lib/librte_eal/common/include/rte_dev.h | 1 + lib/librte_eal/common/include/rte_pci.h | 1 + lib/librte_eal/linuxapp/eal/eal_pci.c | 3 + lib/librte_ether/Makefile | 2 + lib/librte_ether/rte_ethdev.c | 117 ------------------ lib/librte_ether/rte_ethdev.h | 105 +--------------- lib/librte_ether/rte_ethdev_pci.h | 191 ++++++++++++++++++++++++++++++ lib/librte_ether/rte_ethdev_vdev.h | 84 +++++++++++++ lib/librte_ether/rte_ether_version.map | 11 +- test/test/test_link_bonding_rssconf.c | 4 +- test/test/virtual_pmd.c | 12 +- 55 files changed, 1185 insertions(+), 966 deletions(-) delete mode 100644 drivers/net/null/rte_eth_null.h create mode 100644 lib/librte_ether/rte_ethdev_pci.h create mode 100644 lib/librte_ether/rte_ethdev_vdev.h -- 2.1.4