diff options
author | Jim Gibson <gibson+fdio@cisco.com> | 2017-06-01 15:30:03 -0400 |
---|---|---|
committer | Jim Gibson <gibson+fdio@cisco.com> | 2017-06-02 16:51:22 -0400 |
commit | 716eb01c0b25f7b5bd74e91ec3a1c8d51d402c00 (patch) | |
tree | 919b6c07dd9a4a9bf6c430e382efed18e9162916 /cicn-plugin/cicn/cicn.c | |
parent | 2c8098d53b946eec9526dbb5cb4086efb6fa3366 (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.c | 30 |
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* */ |