aboutsummaryrefslogtreecommitdiffstats
path: root/cicn-plugin/cicn/cicn.c
diff options
context:
space:
mode:
authorJim Gibson <gibson+fdio@cisco.com>2017-06-01 15:30:03 -0400
committerJim Gibson <gibson+fdio@cisco.com>2017-06-02 16:51:22 -0400
commit716eb01c0b25f7b5bd74e91ec3a1c8d51d402c00 (patch)
tree919b6c07dd9a4a9bf6c430e382efed18e9162916 /cicn-plugin/cicn/cicn.c
parent2c8098d53b946eec9526dbb5cb4086efb6fa3366 (diff)
Update cicn-plugin for vpp v17.04 (from v17.01)Vpp-plugin-v17.04
1. Changes for cicn-plugin to build under v17.04: - update build files to v17.04, including - no longer need/want plugin to include dpdk headers (though still link in dpdk plugin) - vpp include changes - relocation of vpe.api.h - relocation of pneum.h - for modprobe, replace igb_uio with uio_pci_generic - vnet/ip/udp.h => vnet/udp/udp.h - update cicn vpp plugin registration per vpp changes - use new VLIB_PLUGIN_REGISTER() macro - delete no-loger-supported vlib_plugin_register() function, moving contents of latter to cicn_init - remove sm->ethernet_main, which was not used and is no longer part of plugin boilerplate. - cicn_api_test_plugin.so (plugin for vpp_api_test) - update per 17.04 updated requirements: vat_api_hookup => cicn_vat_api_hookup - buffering/cloning changes needed for building - CICN_FEATURE_VPP_VLIB_CLONING hard-coded enabled and removed, - CICN_FEATURE_DPDK_RTEMBUF_CLONING removed - Small indentation updates from vpp checkstyle.sh 2. Updates for new vlib_buffer_attach_clone() API now exported by vpp - remove code to manage rte_mbuf: cicn plugin now longer depends on dpdk being present. - remove use of indirect header for cloned cs entry: new scheme supports having hdr buffer point directly to shared buffer rather that requiring hdr buffer to poitn to indirect header that points to cs buffer - cicn_rte_mbuf_inlines.h replaced by much smaller cicn_infra_inlines.h - report new characteristic of whether cloning replication is enabled - "cicn show internal" (dbg cli), "cicn_api_node_params_get" (vpp_api_test) - update output accordingly - cicn_show: other tweaks to output 3. In node.c, in code for dropping possibly multiple buffers - delete ifdef'd-out code block for dropping using the drop node [this codepath possibly had buffer problems.] - retain code that instead drops by freeing buffers directly. [this codepath has been robust with respect to buffer management] Change-Id: I6e3d18153f52d8b94773332a39cc452873589baf Signed-off-by: Jim Gibson <gibson+fdio@cisco.com>
Diffstat (limited to 'cicn-plugin/cicn/cicn.c')
-rw-r--r--cicn-plugin/cicn/cicn.c30
1 files changed, 9 insertions, 21 deletions
diff --git a/cicn-plugin/cicn/cicn.c b/cicn-plugin/cicn/cicn.c
index d44eeb6f..9beea5d5 100644
--- a/cicn-plugin/cicn/cicn.c
+++ b/cicn-plugin/cicn/cicn.c
@@ -441,30 +441,10 @@ cicn_init (vlib_main_t * vm)
{
clib_error_t *error = 0;
- error = cicn_api_plugin_hookup (vm);
-
- return error;
-}
-
-VLIB_INIT_FUNCTION (cicn_init);
-
-/*
- * This routine exists to convince the vlib plugin framework that
- * we haven't accidentally copied a random .dll into the plugin directory.
- *
- * Also collects global variable pointers passed from the vpp engine
- */
-
-clib_error_t *
-vlib_plugin_register (vlib_main_t * vm, vnet_plugin_handoff_t * h,
- int from_early_init)
-{
cicn_main_t *sm = &cicn_main;
- clib_error_t *error = 0;
sm->vlib_main = vm;
- sm->vnet_main = h->vnet_main;
- sm->ethernet_main = h->ethernet_main;
+ sm->vnet_main = vnet_get_main ();
/* Init other elements in the 'main' struct */
sm->is_enabled = 0;
@@ -476,6 +456,14 @@ vlib_plugin_register (vlib_main_t * vm, vnet_plugin_handoff_t * h,
sm->pgen_svr_enabled = 0;
+ error = cicn_api_plugin_hookup (vm);
+
return error;
}
+VLIB_INIT_FUNCTION (cicn_init);
+
+/* *INDENT-OFF* */
+VLIB_PLUGIN_REGISTER () = {
+};
+/* *INDENT-ON* */