2
0
mirror of https://github.com/openvswitch/ovs synced 2025-09-05 00:35:33 +00:00
Files
ovs/lib/dpdk.h
Harry van Haaren b250b39a7a dpdk: enable CPU feature detection.
This commit implements a method to retrieve the CPU ISA capabilities.
These ISA capabilities can be used in OVS to at runtime select a function
implementation to make the best use of the available ISA on the CPU.

Signed-off-by: Harry van Haaren <harry.van.haaren@intel.com>
Acked-by: William Tu <u9012063@gmail.com>
Signed-off-by: Ian Stokes <ian.stokes@intel.com>
2020-07-13 14:55:03 +01:00

50 lines
1.3 KiB
C

/*
* Copyright (c) 2016 Nicira, Inc.
*
* 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.
*/
#ifndef DPDK_H
#define DPDK_H
#include <stdbool.h>
#ifdef DPDK_NETDEV
#include <rte_config.h>
#include <rte_lcore.h>
#define NON_PMD_CORE_ID LCORE_ID_ANY
#else
#define NON_PMD_CORE_ID UINT32_MAX
#endif /* DPDK_NETDEV */
struct smap;
struct ovsrec_open_vswitch;
void dpdk_init(const struct smap *ovs_other_config);
void dpdk_set_lcore_id(unsigned cpu);
const char *dpdk_get_vhost_sock_dir(void);
bool dpdk_vhost_iommu_enabled(void);
bool dpdk_vhost_postcopy_enabled(void);
bool dpdk_per_port_memory(void);
bool dpdk_available(void);
void print_dpdk_version(void);
void dpdk_status(const struct ovsrec_open_vswitch *);
bool dpdk_get_cpu_has_isa(const char *arch, const char *feature);
#endif /* dpdk.h */