]> git.puffer.fish Git - matthieu/frr.git/commitdiff
zebra: Move lsp_process_q to zrouter
authorDonald Sharp <sharpd@cumulusnetworks.com>
Fri, 11 Jan 2019 20:33:20 +0000 (15:33 -0500)
committerDonald Sharp <sharpd@cumulusnetworks.com>
Thu, 31 Jan 2019 14:20:46 +0000 (09:20 -0500)
Signed-off-by: Donald Sharp <sharpd@cumulusnetworks.com>
zebra/main.c
zebra/zebra_mpls.c
zebra/zebra_router.h
zebra/zserv.h

index 6b58f4a137786262f18703d426475d59a45aef82..811c4dd70b4ca8731016edb888deceb5e812e7bb 100644 (file)
@@ -167,8 +167,8 @@ static void sigint(void)
                        if (zvrf)
                                SET_FLAG(zvrf->flags, ZEBRA_VRF_RETAIN);
                }
-       if (zebrad.lsp_process_q)
-               work_queue_free_and_null(&zebrad.lsp_process_q);
+       if (zrouter.lsp_process_q)
+               work_queue_free_and_null(&zrouter.lsp_process_q);
        vrf_terminate();
 
        ns_walk_func(zebra_ns_early_shutdown);
index 45280d5cc8a918c683ec92c0d15df3a1669b3f99..6ce60c46416c2ccbacf3540e7070dc627b9a9881 100644 (file)
@@ -1075,13 +1075,13 @@ static int lsp_processq_add(zebra_lsp_t *lsp)
        if (CHECK_FLAG(lsp->flags, LSP_FLAG_SCHEDULED))
                return 0;
 
-       if (zebrad.lsp_process_q == NULL) {
+       if (zrouter.lsp_process_q == NULL) {
                flog_err(EC_ZEBRA_WQ_NONEXISTENT,
                         "%s: work_queue does not exist!", __func__);
                return -1;
        }
 
-       work_queue_add(zebrad.lsp_process_q, lsp);
+       work_queue_add(zrouter.lsp_process_q, lsp);
        SET_FLAG(lsp->flags, LSP_FLAG_SCHEDULED);
        return 0;
 }
@@ -1717,19 +1717,19 @@ static char *snhlfe2str(zebra_snhlfe_t *snhlfe, char *buf, int size)
  */
 static int mpls_processq_init(struct zebra_t *zebra)
 {
-       zebra->lsp_process_q = work_queue_new(zrouter.master, "LSP processing");
-       if (!zebra->lsp_process_q) {
+       zrouter.lsp_process_q = work_queue_new(zrouter.master, "LSP processing");
+       if (!zrouter.lsp_process_q) {
                flog_err(EC_ZEBRA_WQ_NONEXISTENT,
                         "%s: could not initialise work queue!", __func__);
                return -1;
        }
 
-       zebra->lsp_process_q->spec.workfunc = &lsp_process;
-       zebra->lsp_process_q->spec.del_item_data = &lsp_processq_del;
-       zebra->lsp_process_q->spec.errorfunc = NULL;
-       zebra->lsp_process_q->spec.completion_func = &lsp_processq_complete;
-       zebra->lsp_process_q->spec.max_retries = 0;
-       zebra->lsp_process_q->spec.hold = 10;
+       zrouter.lsp_process_q->spec.workfunc = &lsp_process;
+       zrouter.lsp_process_q->spec.del_item_data = &lsp_processq_del;
+       zrouter.lsp_process_q->spec.errorfunc = NULL;
+       zrouter.lsp_process_q->spec.completion_func = &lsp_processq_complete;
+       zrouter.lsp_process_q->spec.max_retries = 0;
+       zrouter.lsp_process_q->spec.hold = 10;
 
        return 0;
 }
index b4daeea245ceb35b339e9a11049497c67254e635..39a7c9f8750c70ffe856629f3672770d73fece62 100644 (file)
@@ -81,6 +81,9 @@ struct zebra_router {
 
        /* Meta Queue Information */
        struct meta_queue *mq;
+
+       /* LSP work queue */
+       struct work_queue *lsp_process_q;
 };
 
 extern struct zebra_router zrouter;
index 5cad68d5d0af04a38bee1b0464513905418eb940..9a07adb2168bb51ad389763ac22bf93bac939495 100644 (file)
@@ -175,9 +175,6 @@ DECLARE_KOOH(zserv_client_close, (struct zserv *client), (client));
 
 /* Zebra instance */
 struct zebra_t {
-       /* LSP work queue */
-       struct work_queue *lsp_process_q;
-
 #define ZEBRA_ZAPI_PACKETS_TO_PROCESS 1000
        _Atomic uint32_t packets_to_process;
 };