xref: /dpdk/lib/eal/include/rte_hypervisor.h (revision d7e9c02ccad8928b6b804049ced9a3ce6172d81e)
1 /* SPDX-License-Identifier: BSD-3-Clause
2  * Copyright 2017 Mellanox Technologies, Ltd
3  */
4 
5 #ifndef RTE_HYPERVISOR_H
6 #define RTE_HYPERVISOR_H
7 
8 #ifdef __cplusplus
9 extern "C" {
10 #endif
11 
12 /**
13  * @file
14  * Hypervisor awareness.
15  */
16 
17 enum rte_hypervisor {
18 	RTE_HYPERVISOR_NONE,
19 	RTE_HYPERVISOR_KVM,
20 	RTE_HYPERVISOR_HYPERV,
21 	RTE_HYPERVISOR_VMWARE,
22 	RTE_HYPERVISOR_UNKNOWN
23 };
24 
25 /**
26  * Get the id of hypervisor it is running on.
27  */
28 enum rte_hypervisor
29 rte_hypervisor_get(void);
30 
31 /**
32  * Get the name of a given hypervisor id.
33  */
34 const char *
35 rte_hypervisor_get_name(enum rte_hypervisor id);
36 
37 #ifdef __cplusplus
38 }
39 #endif
40 
41 #endif /* RTE_HYPERVISOR_H */
42