[dpdk-dev] [PATCH 4/4] xen: net-front poll mode driver

Neil Horman nhorman at tuxdriver.com
Sat Feb 14 20:31:59 CET 2015


On Sat, Feb 14, 2015 at 01:06:48PM -0500, Stephen Hemminger wrote:
> This driver implements DPDK driver that has the same functionality
> as net-front driver in Linux kernel.
> 
> Signed-off-by: Stephen Hemminger <stephen at networkplumber.org>
> ---
>  config/common_linuxapp                |   6 +
>  lib/Makefile                          |   1 +
>  lib/librte_eal/common/eal_private.h   |   7 +
>  lib/librte_eal/linuxapp/eal/eal.c     |   8 +
>  lib/librte_pmd_xen/Makefile           |  30 ++
>  lib/librte_pmd_xen/virt_dev.c         | 400 +++++++++++++++++++++++++
>  lib/librte_pmd_xen/virt_dev.h         |  30 ++
>  lib/librte_pmd_xen/xen_adapter_info.h |  64 ++++
>  lib/librte_pmd_xen/xen_dev.c          | 369 +++++++++++++++++++++++
>  lib/librte_pmd_xen/xen_dev.h          |  96 ++++++
>  lib/librte_pmd_xen/xen_logs.h         |  23 ++
>  lib/librte_pmd_xen/xen_rxtx.c         | 546 ++++++++++++++++++++++++++++++++++
>  lib/librte_pmd_xen/xen_rxtx.h         | 110 +++++++
>  mk/rte.app.mk                         |   4 +
>  14 files changed, 1694 insertions(+)
>  create mode 100644 lib/librte_pmd_xen/Makefile
>  create mode 100644 lib/librte_pmd_xen/virt_dev.c
>  create mode 100644 lib/librte_pmd_xen/virt_dev.h
>  create mode 100644 lib/librte_pmd_xen/xen_adapter_info.h
>  create mode 100644 lib/librte_pmd_xen/xen_dev.c
>  create mode 100644 lib/librte_pmd_xen/xen_dev.h
>  create mode 100644 lib/librte_pmd_xen/xen_logs.h
>  create mode 100644 lib/librte_pmd_xen/xen_rxtx.c
>  create mode 100644 lib/librte_pmd_xen/xen_rxtx.h
><snip>
> +
> +int
> +rte_xen_pmd_init(void)
> +{
> +	PMD_INIT_FUNC_TRACE();
> +
> +	xen_evt_fd = open("/dev/"XEN_PMD_UIO_NAME, O_RDWR);
> +
> +	if (xen_evt_fd == -1) {
> +		if (errno != ENOENT)
> +			PMD_INIT_LOG(ERR, "cannot open event device %s",
> +					"/dev/"XEN_PMD_UIO_NAME);
> +		return 0;
> +	}
> +
> +	return virt_eth_driver_register(&rte_xen_pmd);
> +}
It looks like you've created a new method of registering a pmd here?  Why not
use the existing REGISTER_PMD_DRIVER macro?  It seems like this method will
break the DSO build.

Neil

> 


More information about the dev mailing list