syslog: use per-thread vlib_main 33/30133/2
authorBenoît Ganne <bganne@cisco.com>
Wed, 25 Nov 2020 12:51:33 +0000 (13:51 +0100)
committerDamjan Marion <dmarion@me.com>
Wed, 25 Nov 2020 18:58:46 +0000 (18:58 +0000)
We should not use main thread vlib_main in workers.

Type: fix

Change-Id: I58c0a8cadf2dc7f768b20ac90e7ec7921e2e8ca4
Signed-off-by: Benoît Ganne <bganne@cisco.com>
src/vnet/syslog/syslog.c
src/vnet/syslog/syslog.h

index f05ce8d..20728b8 100644 (file)
@@ -143,8 +143,7 @@ void
 syslog_msg_init (syslog_msg_t * syslog_msg, syslog_facility_t facility,
                 syslog_severity_t severity, char *app_name, char *msgid)
 {
-  syslog_main_t *sm = &syslog_main;
-  vlib_main_t *vm = sm->vlib_main;
+  vlib_main_t *vm = vlib_get_main ();
 
   syslog_msg->header.facility = facility;
   syslog_msg->header.severity = severity;
@@ -160,7 +159,7 @@ int
 syslog_msg_send (syslog_msg_t * syslog_msg)
 {
   syslog_main_t *sm = &syslog_main;
-  vlib_main_t *vm = sm->vlib_main;
+  vlib_main_t *vm = vlib_get_main ();
   u32 bi, msg_len, *to_next;
   u8 *tmp;
   vlib_buffer_t *b;
@@ -611,7 +610,6 @@ syslog_init (vlib_main_t * vm)
   struct timeval timeval_0;
   vlib_node_t *ip4_lookup_node;
 
-  sm->vlib_main = vm;
   sm->vnet_main = vnet_get_main ();
 
   sm->procid = getpid ();
index 4809af4..3ec1cb3 100644 (file)
@@ -136,7 +136,6 @@ typedef struct
   u32 ip4_lookup_node_index;
 
   /** convenience variables */
-  vlib_main_t *vlib_main;
   vnet_main_t *vnet_main;
 } syslog_main_t;