memif: fix max number of rings
[vpp.git] / src / plugins / memif / private.h
index ad6295e..82056a1 100644 (file)
@@ -16,6 +16,7 @@
  */
 
 #include <vppinfra/lock.h>
+#include <vlib/log.h>
 
 #define MEMIF_DEFAULT_SOCKET_FILENAME  "memif.sock"
 #define MEMIF_DEFAULT_RING_SIZE 1024
 #define MEMIF_DEFAULT_TX_QUEUES 1
 #define MEMIF_DEFAULT_BUFFER_SIZE 2048
 
-#define MEMIF_MAX_M2S_RING             (vec_len (vlib_mains) - 1)
-#define MEMIF_MAX_S2M_RING             (vec_len (vlib_mains) - 1)
-#define MEMIF_MAX_REGION               255
+#define MEMIF_MAX_M2S_RING             (vec_len (vlib_mains))
+#define MEMIF_MAX_S2M_RING             256
+#define MEMIF_MAX_REGION               256
 #define MEMIF_MAX_LOG2_RING_SIZE       14
 
-#define MEMIF_DEBUG 0
 
-#if MEMIF_DEBUG == 1
-#define DBG(...) clib_warning(__VA_ARGS__)
-#define DBG_UNIX_LOG(...) clib_unix_warning(__VA_ARGS__)
-#else
-#define DBG(...)
-#define DBG_UNIX_LOG(...)
-#endif
-
-#if MEMIF_DEBUG == 1
 #define memif_file_add(a, b) do {                                      \
   *a = clib_file_add (&file_main, b);                                  \
-  clib_warning ("clib_file_add fd %d private_data %u idx %u",          \
+  vlib_log_warn ((&memif_main)->log_class,                             \
+               "clib_file_add fd %d private_data %u idx %u",           \
                (b)->file_descriptor, (b)->private_data, *a);           \
 } while (0)
 
 #define memif_file_del(a) do {                                         \
-  clib_warning ("clib_file_del idx %u",a - file_main.file_pool);       \
+  vlib_log_warn ((&memif_main)->log_class,                             \
+               "clib_file_del idx %u",a - file_main.file_pool);        \
   clib_file_del (&file_main, a);                                       \
 } while (0)
 
 #define memif_file_del_by_index(a) do {                                        \
-  clib_warning ("clib_file_del idx %u", a);                            \
+  vlib_log_warn ((&memif_main)->log_class, "clib_file_del idx %u", a); \
   clib_file_del_by_index (&file_main, a);                              \
 } while (0)
-#else
-#define memif_file_add(a, b) do {                                      \
-  *a = clib_file_add (&file_main, b);                                  \
-} while (0)
-#define memif_file_del(a) clib_file_del(&file_main, a)
-#define memif_file_del_by_index(a) clib_file_del_by_index(&file_main, a)
-#endif
 
 typedef struct
 {
@@ -80,6 +66,8 @@ typedef struct
 
 typedef struct
 {
+  /* Required for vec_validate_aligned */
+  CLIB_CACHE_LINE_ALIGN_MARK (cacheline0);
   void *shm;
   memif_region_size_t region_size;
   int fd;
@@ -225,6 +213,8 @@ typedef struct
   /* per thread data */
   memif_per_thread_data_t *per_thread_data;
 
+  vlib_log_class_t log_class;
+
 } memif_main_t;
 
 extern memif_main_t memif_main;