summaryrefslogtreecommitdiffstats
path: root/src/plugins/memif/private.h
diff options
context:
space:
mode:
authorDamjan Marion <damarion@cisco.com>2018-03-28 18:27:38 +0200
committerDamjan Marion <damarion@cisco.com>2018-04-04 16:52:15 +0200
commitcef1db9c13f57a1fc49c9e500adffafa0b9ca728 (patch)
treec69354634910e3d4db26b424ff5d8f47abf8c508 /src/plugins/memif/private.h
parent871dc4287d8c05ff76106dba4f5f8654c24347fe (diff)
memif: zero copy slave
Change-Id: I65306fb1f8e39221dd1d8c00737a7fb1c0129ba8 Signed-off-by: Damjan Marion <damarion@cisco.com>
Diffstat (limited to 'src/plugins/memif/private.h')
-rw-r--r--src/plugins/memif/private.h8
1 files changed, 7 insertions, 1 deletions
diff --git a/src/plugins/memif/private.h b/src/plugins/memif/private.h
index f4ace4cee5d..ad6295e4bb8 100644
--- a/src/plugins/memif/private.h
+++ b/src/plugins/memif/private.h
@@ -83,6 +83,7 @@ typedef struct
void *shm;
memif_region_size_t region_size;
int fd;
+ u8 is_external;
} memif_region_t;
typedef struct
@@ -101,6 +102,7 @@ typedef struct
u16 last_head;
u16 last_tail;
+ u32 *buffers;
/* interrupts */
int int_fd;
@@ -116,7 +118,9 @@ typedef struct
_(1, IS_SLAVE, "slave") \
_(2, CONNECTING, "connecting") \
_(3, CONNECTED, "connected") \
- _(4, DELETING, "deleting")
+ _(4, DELETING, "deleting") \
+ _(5, ZERO_COPY, "zero-copy") \
+ _(6, ERROR, "error")
typedef enum
{
@@ -201,6 +205,7 @@ typedef struct
/* buffer template */
vlib_buffer_t buffer_template;
+ memif_desc_t desc_template;
} memif_per_thread_data_t;
typedef struct
@@ -238,6 +243,7 @@ typedef struct
u32 socket_id;
u8 *secret;
u8 is_master;
+ u8 is_zero_copy;
memif_interface_mode_t mode:8;
memif_log2_ring_size_t log2_ring_size;
u16 buffer_size;