diff options
author | Steven <sluong@cisco.com> | 2017-05-30 10:35:51 -0700 |
---|---|---|
committer | Dave Wallace <dwallacelf@gmail.com> | 2017-05-31 02:27:45 +0000 |
commit | c2ebcbb89bea719418fc3f896ae3de4302acaf6d (patch) | |
tree | 7b035f314305d100c1c1c482887581739d96f987 /src/plugins/memif/memif.api | |
parent | 79ea7ec3b3c04d334a21107818c64d70c42b99ae (diff) |
memif: multi-queues support
- Add rx-queues and tx-queues option to the create memif CLI
- Add vlib_worker_thread_barrier_sync () to memif_conn_fd_read_ready () as
the latter function may disconnect the ring and clean up the shared memory.
- On transmit, write the rid (queue number) to the socket.
- On receive, read the rid and trigger the interrupt for the corresponding
thread.
Change-Id: If1c7e26c7124174678f047909cbc33e931eaac8c
Signed-off-by: Steven <sluong@cisco.com>
Diffstat (limited to 'src/plugins/memif/memif.api')
-rw-r--r-- | src/plugins/memif/memif.api | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/src/plugins/memif/memif.api b/src/plugins/memif/memif.api index 95e016c39f2..b0a351aa5d3 100644 --- a/src/plugins/memif/memif.api +++ b/src/plugins/memif/memif.api @@ -17,6 +17,8 @@ @param client_index - opaque cookie to identify the sender @param context - sender context, to match reply w/ request @param role - role of the interface in the connection (master/slave) + @param rx_queues - number of rx queues (only valid for slave) + #param tx_queues - number of tx queues (only valid for slave) @param key - 64bit integer used to authenticate and match opposite sides of the connection @param socket_filename - filename of the socket to be used for connection @@ -31,6 +33,8 @@ define memif_create u32 context; u8 role; /* 0 = master, 1 = slave */ + u8 rx_queues; /* optional, default is 1 */ + u8 tx_queues; /* optional, default is 1 */ u64 key; /* optional, default is 0 */ u8 socket_filename[128]; /* optional, default is "/var/vpp/memif.sock" and can be changed in VPP startup config */ |