2
0
mirror of https://github.com/openvswitch/ovs synced 2025-08-25 03:17:30 +00:00
ovs/lib/netdev-dpdk.h
maryam.tahhan 95fb793ae7 netdev-dpdk: add dpdk rings to netdev-dpdk
Shared memory ring patch

This patch enables the client dpdk rings within the netdev-dpdk.  It adds
a new dpdk device called dpdkr (other naming suggestions?).  This allows
for the use of shared memory to communicate with other dpdk applications,
on the host or within a virtual machine.  Instructions for use are in
INSTALL.DPDK.

This has been tested on Intel multi-core platforms and with the client
application within the host.

Signed-off-by: Gerald Rogers <gerald.rogers@intel.com>
Signed-off-by: Maryam Tahhan <maryam.tahhan@intel.com>
Acked-by: Pravin B Shelar <pshelar@nicira.com>
2014-07-16 09:43:15 -07:00

57 lines
947 B
C

#ifndef NETDEV_DPDK_H
#define NETDEV_DPDK_H
#include <config.h>
#include "ofpbuf.h"
struct dpif_packet;
#ifdef DPDK_NETDEV
#include <rte_config.h>
#include <rte_eal.h>
#include <rte_debug.h>
#include <rte_ethdev.h>
#include <rte_eth_ring.h>
#include <rte_errno.h>
#include <rte_memzone.h>
#include <rte_memcpy.h>
#include <rte_cycles.h>
#include <rte_spinlock.h>
#include <rte_launch.h>
#include <rte_malloc.h>
int dpdk_init(int argc, char **argv);
void netdev_dpdk_register(void);
void free_dpdk_buf(struct dpif_packet *);
int pmd_thread_setaffinity_cpu(int cpu);
#else
static inline int
dpdk_init(int arg1 OVS_UNUSED, char **arg2 OVS_UNUSED)
{
return 0;
}
static inline void
netdev_dpdk_register(void)
{
/* Nothing */
}
static inline void
free_dpdk_buf(struct dpif_packet *buf OVS_UNUSED)
{
/* Nothing */
}
static inline int
pmd_thread_setaffinity_cpu(int cpu OVS_UNUSED)
{
return 0;
}
#endif /* DPDK_NETDEV */
#endif