From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wg0-f46.google.com (mail-wg0-f46.google.com [74.125.82.46]) by dpdk.org (Postfix) with ESMTP id A407E68D1 for ; Fri, 11 Apr 2014 13:43:32 +0200 (CEST) Received: by mail-wg0-f46.google.com with SMTP id b13so5307311wgh.29 for ; Fri, 11 Apr 2014 04:45:09 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20130820; h=x-gm-message-state:from:to:cc:subject:date:message-id:in-reply-to :references; bh=hdTdmc/NQHa6yxaqrLYUgu1bvy13Yn8l17RP1tMey+8=; b=AwRvtzfvuoZ2WtQUDP6fuzpwVQPAN1xkfl88fVGer9Fic9TBJ/KIgkI7J5B18lNNO+ 9wSvC7vAypF1vHJa0b4LFjECExTaA3rexhkRIsYUN5nPHLYmnj49aQbLvHjCUfPhbMY/ JDZ4NyTM7G+x+rprtVJxtU1yAxjqJgfz78Izz+fs9bf8fJYLmeQAhLIf7rZEKeBca/yV Ai29DgG+pDdLpQ/rxKzuHNqiY1XSFsZ4HFFZFbnYNPf71owtpB4M23xOi8Cw4uR9VWZI kGD/vKoaesSH1LC3fCQFuZwp/RMovHM66AomGMLb/WMfhyYsi1f38VE4y0b1FpO0fMZP wgnA== X-Gm-Message-State: ALoCoQmZo03Q12nbEz9dG8SwwPgwcrk1MP/1VoVul+40qO1Ct54/G7riXIrH4MVccx5c5O9obie3 X-Received: by 10.181.12.112 with SMTP id ep16mr3101990wid.54.1397216709633; Fri, 11 Apr 2014 04:45:09 -0700 (PDT) Received: from glumotte.dev.6wind.com (6wind.net2.nerim.net. [213.41.180.237]) by mx.google.com with ESMTPSA id or5sm10972976wjc.2.2014.04.11.04.45.08 for (version=TLSv1.2 cipher=ECDHE-RSA-AES128-SHA bits=128/128); Fri, 11 Apr 2014 04:45:08 -0700 (PDT) From: Olivier Matz To: dev@dpdk.org Date: Fri, 11 Apr 2014 13:45:03 +0200 Message-Id: <1397216703-30301-1-git-send-email-olivier.matz@6wind.com> X-Mailer: git-send-email 1.8.5.3 In-Reply-To: <1534459.c4aMep7oeX@xps13> References: <1534459.c4aMep7oeX@xps13> Subject: [dpdk-dev] [PATCH v3 06/11] vdev: rename nonpci_devs as vdev X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 11 Apr 2014 11:43:33 -0000 The name "nonpci_devs" for virtual devices is ambiguous as a physical device can also be non-PCI (ex: usb, sata, ...). A better name for this file is "vdev" as it only deals with virtual devices. This patch doesn't introduce any change except renaming. Signed-off-by: Olivier Matz --- lib/librte_eal/bsdapp/eal/Makefile | 2 +- lib/librte_eal/bsdapp/eal/eal.c | 4 +- lib/librte_eal/common/eal_common_nonpci_devs.c | 111 ------------------------- lib/librte_eal/common/eal_common_vdev.c | 111 +++++++++++++++++++++++++ lib/librte_eal/common/include/eal_private.h | 4 +- lib/librte_eal/linuxapp/eal/Makefile | 2 +- lib/librte_eal/linuxapp/eal/eal.c | 4 +- 7 files changed, 119 insertions(+), 119 deletions(-) delete mode 100644 lib/librte_eal/common/eal_common_nonpci_devs.c create mode 100644 lib/librte_eal/common/eal_common_vdev.c diff --git a/lib/librte_eal/bsdapp/eal/Makefile b/lib/librte_eal/bsdapp/eal/Makefile index 73facae..4c2a4f1 100644 --- a/lib/librte_eal/bsdapp/eal/Makefile +++ b/lib/librte_eal/bsdapp/eal/Makefile @@ -69,7 +69,7 @@ SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_errno.c SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_cpuflags.c SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_hexdump.c SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_whitelist.c -SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_nonpci_devs.c +SRCS-$(CONFIG_RTE_LIBRTE_EAL_BSDAPP) += eal_common_vdev.c CFLAGS_eal.o := -D_GNU_SOURCE #CFLAGS_eal_thread.o := -D_GNU_SOURCE diff --git a/lib/librte_eal/bsdapp/eal/eal.c b/lib/librte_eal/bsdapp/eal/eal.c index be00f91..e944aba 100644 --- a/lib/librte_eal/bsdapp/eal/eal.c +++ b/lib/librte_eal/bsdapp/eal/eal.c @@ -854,8 +854,8 @@ rte_eal_init(int argc, char **argv) rte_eal_mcfg_complete(); - if (rte_eal_non_pci_ethdev_init() < 0) - rte_panic("Cannot init non-PCI eth_devs\n"); + if (rte_eal_vdev_init() < 0) + rte_panic("Cannot init virtual devices\n"); RTE_LCORE_FOREACH_SLAVE(i) { diff --git a/lib/librte_eal/common/eal_common_nonpci_devs.c b/lib/librte_eal/common/eal_common_nonpci_devs.c deleted file mode 100644 index 71cbb1e..0000000 --- a/lib/librte_eal/common/eal_common_nonpci_devs.c +++ /dev/null @@ -1,111 +0,0 @@ -/*- - * BSD LICENSE - * - * Copyright(c) 2010-2014 Intel Corporation. All rights reserved. - * Copyright(c) 2014 6WIND S.A. - * All rights reserved. - * - * Redistribution and use in source and binary forms, with or without - * modification, are permitted provided that the following conditions - * are met: - * - * * Redistributions of source code must retain the above copyright - * notice, this list of conditions and the following disclaimer. - * * Redistributions in binary form must reproduce the above copyright - * notice, this list of conditions and the following disclaimer in - * the documentation and/or other materials provided with the - * distribution. - * * Neither the name of Intel Corporation nor the names of its - * contributors may be used to endorse or promote products derived - * from this software without specific prior written permission. - * - * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS - * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT - * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR - * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT - * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, - * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT - * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, - * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY - * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT - * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE - * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. - */ - -#include -#include -#include -#ifdef RTE_LIBRTE_PMD_RING -#include -#endif -#ifdef RTE_LIBRTE_PMD_PCAP -#include -#endif -#ifdef RTE_LIBRTE_PMD_XENVIRT -#include -#endif -#include -#include -#include "eal_private.h" - -struct device_init { - const char *dev_prefix; - int (*init_fn)(const char*, const char *); -}; - -#define NUM_DEV_TYPES (sizeof(dev_types)/sizeof(dev_types[0])) -struct device_init dev_types[] = { -#ifdef RTE_LIBRTE_PMD_RING - { - .dev_prefix = RTE_ETH_RING_PARAM_NAME, - .init_fn = rte_pmd_ring_init - }, -#endif -#ifdef RTE_LIBRTE_PMD_PCAP - { - .dev_prefix = RTE_ETH_PCAP_PARAM_NAME, - .init_fn = rte_pmd_pcap_init - }, -#endif -#ifdef RTE_LIBRTE_PMD_XENVIRT - { - .dev_prefix = RTE_ETH_XENVIRT_PARAM_NAME, - .init_fn = rte_pmd_xenvirt_init - }, -#endif - { - .dev_prefix = "-nodev-", - .init_fn = NULL - } -}; - -int -rte_eal_non_pci_ethdev_init(void) -{ - struct rte_devargs *devargs; - uint8_t i; - - /* call the init function for each virtual device */ - TAILQ_FOREACH(devargs, &devargs_list, next) { - - if (devargs->type != RTE_DEVTYPE_VIRTUAL) - continue; - - for (i = 0; i < NUM_DEV_TYPES; i++) { - /* search a driver prefix in virtual device name */ - if (!strncmp(dev_types[i].dev_prefix, - devargs->virtual.drv_name, - sizeof(dev_types[i].dev_prefix) - 1)) { - dev_types[i].init_fn(devargs->virtual.drv_name, - devargs->args); - break; - } - } - - if (i == NUM_DEV_TYPES) { - rte_panic("no driver found for %s\n", - devargs->virtual.drv_name); - } - } - return 0; -} diff --git a/lib/librte_eal/common/eal_common_vdev.c b/lib/librte_eal/common/eal_common_vdev.c new file mode 100644 index 0000000..02d3fd6 --- /dev/null +++ b/lib/librte_eal/common/eal_common_vdev.c @@ -0,0 +1,111 @@ +/*- + * BSD LICENSE + * + * Copyright(c) 2010-2014 Intel Corporation. All rights reserved. + * Copyright(c) 2014 6WIND S.A. + * All rights reserved. + * + * Redistribution and use in source and binary forms, with or without + * modification, are permitted provided that the following conditions + * are met: + * + * * Redistributions of source code must retain the above copyright + * notice, this list of conditions and the following disclaimer. + * * Redistributions in binary form must reproduce the above copyright + * notice, this list of conditions and the following disclaimer in + * the documentation and/or other materials provided with the + * distribution. + * * Neither the name of Intel Corporation nor the names of its + * contributors may be used to endorse or promote products derived + * from this software without specific prior written permission. + * + * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS + * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT + * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR + * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT + * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, + * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT + * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, + * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY + * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT + * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE + * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + */ + +#include +#include +#include +#ifdef RTE_LIBRTE_PMD_RING +#include +#endif +#ifdef RTE_LIBRTE_PMD_PCAP +#include +#endif +#ifdef RTE_LIBRTE_PMD_XENVIRT +#include +#endif +#include +#include +#include "eal_private.h" + +struct device_init { + const char *dev_prefix; + int (*init_fn)(const char*, const char *); +}; + +#define NUM_DEV_TYPES (sizeof(dev_types)/sizeof(dev_types[0])) +struct device_init dev_types[] = { +#ifdef RTE_LIBRTE_PMD_RING + { + .dev_prefix = RTE_ETH_RING_PARAM_NAME, + .init_fn = rte_pmd_ring_init + }, +#endif +#ifdef RTE_LIBRTE_PMD_PCAP + { + .dev_prefix = RTE_ETH_PCAP_PARAM_NAME, + .init_fn = rte_pmd_pcap_init + }, +#endif +#ifdef RTE_LIBRTE_PMD_XENVIRT + { + .dev_prefix = RTE_ETH_XENVIRT_PARAM_NAME, + .init_fn = rte_pmd_xenvirt_init + }, +#endif + { + .dev_prefix = "-nodev-", + .init_fn = NULL + } +}; + +int +rte_eal_vdev_init(void) +{ + struct rte_devargs *devargs; + uint8_t i; + + /* call the init function for each virtual device */ + TAILQ_FOREACH(devargs, &devargs_list, next) { + + if (devargs->type != RTE_DEVTYPE_VIRTUAL) + continue; + + for (i = 0; i < NUM_DEV_TYPES; i++) { + /* search a driver prefix in virtual device name */ + if (!strncmp(dev_types[i].dev_prefix, + devargs->virtual.drv_name, + sizeof(dev_types[i].dev_prefix) - 1)) { + dev_types[i].init_fn(devargs->virtual.drv_name, + devargs->args); + break; + } + } + + if (i == NUM_DEV_TYPES) { + rte_panic("no driver found for %s\n", + devargs->virtual.drv_name); + } + } + return 0; +} diff --git a/lib/librte_eal/common/include/eal_private.h b/lib/librte_eal/common/include/eal_private.h index f9a019b..22d8b08 100644 --- a/lib/librte_eal/common/include/eal_private.h +++ b/lib/librte_eal/common/include/eal_private.h @@ -197,10 +197,10 @@ int rte_eal_intr_init(void); int rte_eal_alarm_init(void); /** - * This function initialises any non-PCI i.e. dummy ethernet devices + * This function initialises any virtual devices * * This function is private to the EAL. */ -int rte_eal_non_pci_ethdev_init(void); +int rte_eal_vdev_init(void); #endif /* _EAL_PRIVATE_H_ */ diff --git a/lib/librte_eal/linuxapp/eal/Makefile b/lib/librte_eal/linuxapp/eal/Makefile index bdd940d..00f7367 100644 --- a/lib/librte_eal/linuxapp/eal/Makefile +++ b/lib/librte_eal/linuxapp/eal/Makefile @@ -77,7 +77,7 @@ SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_common_errno.c SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_common_cpuflags.c SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_common_hexdump.c SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_common_devargs.c -SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_common_nonpci_devs.c +SRCS-$(CONFIG_RTE_LIBRTE_EAL_LINUXAPP) += eal_common_vdev.c CFLAGS_eal.o := -D_GNU_SOURCE CFLAGS_eal_thread.o := -D_GNU_SOURCE diff --git a/lib/librte_eal/linuxapp/eal/eal.c b/lib/librte_eal/linuxapp/eal/eal.c index 905ce37..c015a65 100644 --- a/lib/librte_eal/linuxapp/eal/eal.c +++ b/lib/librte_eal/linuxapp/eal/eal.c @@ -1046,8 +1046,8 @@ rte_eal_init(int argc, char **argv) rte_eal_mcfg_complete(); - if (rte_eal_non_pci_ethdev_init() < 0) - rte_panic("Cannot init non-PCI eth_devs\n"); + if (rte_eal_vdev_init() < 0) + rte_panic("Cannot init virtual devices\n"); TAILQ_FOREACH(solib, &solib_list, next) { solib->lib_handle = dlopen(solib->name, RTLD_NOW); -- 1.8.5.3