libmemif: introduce 'memif_per_thread_' namespace 66/20966/12
authorJakub Grajciar <jgrajcia@cisco.com>
Wed, 31 Jul 2019 12:40:52 +0000 (14:40 +0200)
committerDamjan Marion <dmarion@me.com>
Wed, 21 Aug 2019 14:45:43 +0000 (14:45 +0000)
commit17f2a7bbf25f54dbd71aa8f377875828b7b88e35
treeab88f5d0759bfe703c818a40ea46d0e52b28783d
parentb6103105f99e0c7f210a9596f205a1efd21b626f
libmemif: introduce 'memif_per_thread_' namespace

APIs in 'memif_per_thread_' namespace are used to split the global
database into separate databases, to improve multi-thread use cases.

Using 'memif_per_thread_init' client can create separate libmemif
databases (libmemif_main_t). Client will reference these databases
using memif_per_thread_handle_t. Each database requires unique socket.
Created interface will be stored in the same database as the socket
passed in connection arguments.

Example code: extras/libmemif/examples/icmp_responder_3-1/main.c

Type: feature

Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
Change-Id: I261563ecc34761a76e94f20c20015394398ddfd7
Signed-off-by: Jakub Grajciar <jgrajcia@cisco.com>
extras/libmemif/examples/CMakeLists.txt
extras/libmemif/examples/icmp_responder-mt_3-1/main.c [new file with mode: 0644]
extras/libmemif/src/libmemif.h
extras/libmemif/src/main.c
extras/libmemif/src/memif_private.h
extras/libmemif/src/socket.c
extras/libmemif/src/socket.h
extras/libmemif/test/main_test.c
extras/libmemif/test/socket_test.c