X-Git-Url: https://gerrit.opnfv.org/gerrit/gitweb?a=blobdiff_plain;f=src%2Fceph%2Fsrc%2Fmsg%2Fasync%2Fdpdk%2Fdpdk_rte.h;fp=src%2Fceph%2Fsrc%2Fmsg%2Fasync%2Fdpdk%2Fdpdk_rte.h;h=0000000000000000000000000000000000000000;hb=7da45d65be36d36b880cc55c5036e96c24b53f00;hp=4aa83899492411b86d8a45be7f39619d292db949;hpb=691462d09d0987b47e112d6ee8740375df3c51b2;p=stor4nfv.git diff --git a/src/ceph/src/msg/async/dpdk/dpdk_rte.h b/src/ceph/src/msg/async/dpdk/dpdk_rte.h deleted file mode 100644 index 4aa8389..0000000 --- a/src/ceph/src/msg/async/dpdk/dpdk_rte.h +++ /dev/null @@ -1,74 +0,0 @@ -/* - * This file is open source software, licensed to you under the terms - * of the Apache License, Version 2.0 (the "License"). See the NOTICE file - * distributed with this work for additional information regarding copyright - * ownership. 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. - */ -#ifndef CEPH_DPDK_RTE_H_ -#define CEPH_DPDK_RTE_H_ - - -#include -#include -#include - -#include -#include -#include -#include - -/*********************** Compat section ***************************************/ -// We currently support only versions 2.0 and above. -#if (RTE_VERSION < RTE_VERSION_NUM(2,0,0,0)) -#error "DPDK version above 2.0.0 is required" -#endif - -#if defined(RTE_MBUF_REFCNT_ATOMIC) -#warning "CONFIG_RTE_MBUF_REFCNT_ATOMIC should be disabled in DPDK's " \ - "config/common_linuxapp" -#endif -/******************************************************************************/ - -namespace dpdk { - -// DPDK Environment Abstraction Layer -class eal { - public: - using cpuset = std::bitset; - - static std::mutex lock; - static std::condition_variable cond; - static std::list> funcs; - static int init(CephContext *c); - static void execute_on_master(std::function &&f) { - bool done = false; - std::unique_lock l(lock); - funcs.emplace_back([&]() { f(); done = true; }); - cond.notify_all(); - while (!done) - cond.wait(l); - } - /** - * Returns the amount of memory needed for DPDK - * @param num_cpus Number of CPUs the application is going to use - * - * @return - */ - static size_t mem_size(int num_cpus); - static bool initialized; - static std::thread t; -}; - -} // namespace dpdk -#endif // CEPH_DPDK_RTE_H_