From 716eb01c0b25f7b5bd74e91ec3a1c8d51d402c00 Mon Sep 17 00:00:00 2001 From: Jim Gibson Date: Thu, 1 Jun 2017 15:30:03 -0400 Subject: Update cicn-plugin for vpp v17.04 (from v17.01) 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 --- cicn-plugin/cicn/cicn_rte_mbuf.h | 69 ---------------------------------------- 1 file changed, 69 deletions(-) delete mode 100644 cicn-plugin/cicn/cicn_rte_mbuf.h (limited to 'cicn-plugin/cicn/cicn_rte_mbuf.h') diff --git a/cicn-plugin/cicn/cicn_rte_mbuf.h b/cicn-plugin/cicn/cicn_rte_mbuf.h deleted file mode 100644 index 43b14506..00000000 --- a/cicn-plugin/cicn/cicn_rte_mbuf.h +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (c) 2017 Cisco and/or its affiliates. - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at: - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ -/* - * Part of cicn plugin's dpdk/rte shim layer for using dpdk/rte mechanisms - * directly while hiding that fact from the bulk of the cicn plugin coce. - * - cicn plugin should not be looking at dpdk headers and should not need - * to. As of v17.01, howeverhowever, buffer cloning to support 0-copy on - * - content message replication - * - content message transmission based on CS hits - * is only available with dpdk, hence those mechanisms are used - * by cicn plugin.) - * - when vlib_buffer cloning support is provided, this shim layer - * can be deprecated/deleted, and cicn plugin will be simpler and will - * be able to run with a vpp that does not include dpdk. - * This is a shim file for including dpdk (rte) headers - * - The purpose of this header shimming includes (in addition to - * cicn_rte_mbuf_inlines.h that has the relevant code) is that - * as of v17.01, including dpdk rte headers works poorly due to conflicts - * between dpdk headers and vpp headers. - */ -#ifndef _CICN_RTE_MBUF_H_ -#define _CICN_RTE_MBUF_H_ 1 - -#include "cicn_params.h" - -#if !CICN_VPP_PLUGIN -#error "cicn-internal file included externally" -#endif - -#if !CICN_FEATURE_VPP_VLIB_CLONING // waiting for this API to cut over -#include - -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#include -#endif // CICN_FEATURE_VPP_VLIB_CLONING -#endif // _CICN_RTE_MBUF_H_ -- cgit 1.2.3-korg