]> git.puffer.fish Git - matthieu/frr.git/commitdiff
bgpd: backout change of bm->master and master
authorDonald Sharp <sharpd@cumulusnetworks.com>
Tue, 13 Oct 2015 20:00:55 +0000 (13:00 -0700)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Tue, 13 Oct 2015 20:00:55 +0000 (13:00 -0700)
Upstream does wanted the reverse of what was done
in this patch.  Back out the patch.

Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
bgpd/bgp_main.c
bgpd/bgp_route.c
bgpd/bgp_snmp.c
bgpd/bgp_vty.c
bgpd/bgpd.c
bgpd/bgpd.h
tests/aspath_test.c

index 2a9f7a223b765d9bbaae3be5966cb126e9a0679f..09e83b8a51f9b6d4de4ac8c02d2892014a17a7c1 100644 (file)
@@ -329,7 +329,6 @@ main (int argc, char **argv)
 
   /* BGP master init. */
   bgp_master_init ();
-  master = thread_master_create();
 
   /* Command line argument treatment. */
   while (1) 
@@ -408,6 +407,9 @@ main (int argc, char **argv)
        }
     }
 
+  /* Make thread master. */
+  master = bm->master;
+
   /* Initializations. */
   srand (time (NULL));
   signal_init (master, array_size(bgp_signals), bgp_signals);
index 104abe05fce45cace6d1b07e54a14efa935513bb..256561f2d131af705f511e12a11a669b6b1ceec8 100644 (file)
@@ -2177,13 +2177,13 @@ bgp_process_queue_init (void)
   if (!bm->process_main_queue)
     {
       bm->process_main_queue
-       = work_queue_new(master, "process_main_queue");
+       = work_queue_new (bm->master, "process_main_queue");
     }
 
   if (!bm->process_rsclient_queue)
     {
       bm->process_rsclient_queue
-       = work_queue_new(master, "process_rsclient_queue");
+       = work_queue_new (bm->master, "process_rsclient_queue");
     }
 
   if ( !(bm->process_main_queue && bm->process_rsclient_queue) )
@@ -3430,7 +3430,7 @@ bgp_clear_node_queue_init (struct peer *peer)
   snprintf (wname, sizeof(wname), "clear %s", peer->host);
 #undef CLEAR_QUEUE_NAME_LEN
 
-  if ( (peer->clear_node_queue = work_queue_new (master, wname)) == NULL)
+  if ( (peer->clear_node_queue = work_queue_new (bm->master, wname)) == NULL)
     {
       zlog_err ("%s: Failed to allocate work queue", __func__);
       exit (1);
@@ -11577,7 +11577,7 @@ bgp_table_stats (struct vty *vty, struct bgp *bgp, afi_t afi, safi_t safi)
   
   memset (&ts, 0, sizeof (ts));
   ts.table = bgp->rib[afi][safi];
-  thread_execute (master, bgp_table_stats_walker, &ts, 0);
+  thread_execute (bm->master, bgp_table_stats_walker, &ts, 0);
 
   vty_out (vty, "BGP %s RIB statistics%s%s",
            afi_safi_print (afi, safi), VTY_NEWLINE, VTY_NEWLINE);
@@ -11884,7 +11884,7 @@ bgp_peer_counts (struct vty *vty, struct peer *peer, afi_t afi, safi_t safi, u_c
  *    * stats for the thread-walk (i.e. ensure this can't be blamed on
  *       * on just vty_read()).
  *          */
-  thread_execute(master, bgp_peer_count_walker, &pcounts, 0);
+  thread_execute (bm->master, bgp_peer_count_walker, &pcounts, 0);
 
   if (use_json)
     {
index 078cb0cc1352b1d08d6319a9326f84ba8c0110f7..79aaa03a6ec964e6542e9210891b9d762a5246a2 100644 (file)
@@ -888,7 +888,7 @@ bgpTrapBackwardTransition (struct peer *peer)
 void
 bgp_snmp_init (void)
 {
-  smux_init(master);
+  smux_init (bm->master);
   REGISTER_MIB("mibII/bgp", bgp_variables, variable, bgp_oid);
 }
 #endif /* HAVE_SNMP */
index 3129a4135d1c2450c5ed44f7508797780b6db704..d2c0a41bab667b76b36ecc4110cadfa43013c34a 100644 (file)
@@ -4946,7 +4946,7 @@ DEFUN (bgp_set_route_map_delay_timer,
       if (!rmap_delay_timer && bgp->t_rmap_update )
        {
          BGP_TIMER_OFF(bgp->t_rmap_update);
-         thread_execute(master, bgp_route_map_update_timer, &bgp, 0);
+         thread_execute (bm->master, bgp_route_map_update_timer, &bgp, 0);
        }
       return CMD_SUCCESS;
     }
index 61a416ab71aca62769350cc18c1a28a27a55e02f..32966c4947f3d6b273050b8e665a26ad64e932b6 100644 (file)
@@ -2904,7 +2904,7 @@ bgp_delete (struct bgp *bgp)
   if (list_isempty(bm->bgp))
     bgp_close ();
 
-  thread_master_free_unused(master);
+  thread_master_free_unused(bm->master);
   bgp_unlock(bgp);  /* initial reference */
 
   return 0;
@@ -6874,6 +6874,7 @@ bgp_master_init (void)
   bm->bgp = list_new ();
   bm->listen_sockets = list_new ();
   bm->port = BGP_PORT_DEFAULT;
+  bm->master = thread_master_create ();
   bm->start_time = bgp_clock ();
 
   bgp_process_queue_init();
index 651cf150935c8e0219905869faffead521b3193d..00e6a1a1faef8399455489e2a74eae3ce76c4571 100644 (file)
@@ -79,6 +79,9 @@ struct bgp_master
   /* BGP instance list.  */
   struct list *bgp;
 
+  /* BGP thread master.  */
+  struct thread_master *master;
+
   /* work queues */
   struct work_queue *process_main_queue;
   struct work_queue *process_rsclient_queue;
index f39e46550df6252a8f2687801dadb864bbbf6e07..8ba77b122b2d95aefbd4abb27031c36fcaca5f75 100644 (file)
@@ -1287,7 +1287,7 @@ main (void)
 {
   int i = 0;
   bgp_master_init ();
-  master = thread_master_create();
+  master = bm->master;
   bgp_option_set (BGP_OPT_NO_LISTEN);
   bgp_attr_init ();