power: create guest channel public header file
authorBruce Richardson <bruce.richardson@intel.com>
Thu, 21 Jan 2021 17:21:56 +0000 (17:21 +0000)
committerThomas Monjalon <thomas@monjalon.net>
Fri, 29 Jan 2021 10:25:40 +0000 (11:25 +0100)
In preparation for making the header file public, we first rename
channel_commands.h as rte_power_guest_channel.h.

Fixes: 210c383e247b ("power: packet format for vm power management")
Fixes: cd0d5547e873 ("power: vm communication channels in guest")
Cc: stable@dpdk.org
Signed-off-by: Bruce Richardson <bruce.richardson@intel.com>
Signed-off-by: David Hunt <david.hunt@intel.com>
examples/vm_power_manager/channel_manager.c
examples/vm_power_manager/channel_monitor.c
examples/vm_power_manager/channel_monitor.h
examples/vm_power_manager/guest_cli/vm_power_cli_guest.h
examples/vm_power_manager/vm_power_cli.c
lib/librte_power/channel_commands.h [deleted file]
lib/librte_power/guest_channel.c
lib/librte_power/guest_channel.h
lib/librte_power/power_kvm_vm.c
lib/librte_power/rte_power_guest_channel.h [new file with mode: 0644]

index 9dca6f6..58a243b 100644 (file)
@@ -27,7 +27,7 @@
 #include <libvirt/libvirt.h>
 
 #include "channel_manager.h"
-#include "channel_commands.h"
+#include "rte_power_guest_channel.h"
 #include "channel_monitor.h"
 #include "power_manager.h"
 
index 228f068..0830610 100644 (file)
@@ -35,7 +35,7 @@
 
 #include <libvirt/libvirt.h>
 #include "channel_monitor.h"
-#include "channel_commands.h"
+#include "rte_power_guest_channel.h"
 #include "channel_manager.h"
 #include "power_manager.h"
 #include "oob_monitor.h"
index 7362a80..4a526ff 100644 (file)
@@ -6,7 +6,7 @@
 #define CHANNEL_MONITOR_H_
 
 #include "channel_manager.h"
-#include "channel_commands.h"
+#include "rte_power_guest_channel.h"
 
 struct core_share {
        unsigned int pcpu;
index 6ad14a3..2299d23 100644 (file)
@@ -9,7 +9,7 @@
 extern "C" {
 #endif
 
-#include "channel_commands.h"
+#include "rte_power_guest_channel.h"
 
 struct channel_packet *get_policy(void);
 
index ed0623a..f7e1b59 100644 (file)
@@ -21,7 +21,7 @@
 #include "channel_manager.h"
 #include "channel_monitor.h"
 #include "power_manager.h"
-#include "channel_commands.h"
+#include "rte_power_guest_channel.h"
 
 struct cmd_quit_result {
        cmdline_fixed_string_t quit;
diff --git a/lib/librte_power/channel_commands.h b/lib/librte_power/channel_commands.h
deleted file mode 100644 (file)
index adc8e5c..0000000
+++ /dev/null
@@ -1,125 +0,0 @@
-/* SPDX-License-Identifier: BSD-3-Clause
- * Copyright(c) 2010-2014 Intel Corporation
- */
-
-#ifndef CHANNEL_COMMANDS_H_
-#define CHANNEL_COMMANDS_H_
-
-#ifdef __cplusplus
-extern "C" {
-#endif
-
-#include <stdint.h>
-#include <stdbool.h>
-
-/* --- Incoming messages --- */
-
-/* Valid Commands */
-#define CPU_POWER               1
-#define CPU_POWER_CONNECT       2
-#define PKT_POLICY              3
-#define PKT_POLICY_REMOVE       4
-
-/* CPU Power Command Scaling */
-#define CPU_POWER_SCALE_UP      1
-#define CPU_POWER_SCALE_DOWN    2
-#define CPU_POWER_SCALE_MAX     3
-#define CPU_POWER_SCALE_MIN     4
-#define CPU_POWER_ENABLE_TURBO  5
-#define CPU_POWER_DISABLE_TURBO 6
-
-/* CPU Power Queries */
-#define CPU_POWER_QUERY_FREQ_LIST  7
-#define CPU_POWER_QUERY_FREQ       8
-#define CPU_POWER_QUERY_CAPS_LIST  9
-#define CPU_POWER_QUERY_CAPS       10
-
-/* --- Outgoing messages --- */
-
-/* Generic Power Command Response */
-#define CPU_POWER_CMD_ACK       1
-#define CPU_POWER_CMD_NACK      2
-
-/* CPU Power Query Responses */
-#define CPU_POWER_FREQ_LIST     3
-#define CPU_POWER_CAPS_LIST     4
-
-#define HOURS 24
-
-#define MAX_VFS 10
-#define VM_MAX_NAME_SZ 32
-
-#define MAX_VCPU_PER_VM         8
-
-struct t_boost_status {
-       bool tbEnabled;
-};
-
-struct timer_profile {
-       int busy_hours[HOURS];
-       int quiet_hours[HOURS];
-       int hours_to_use_traffic_profile[HOURS];
-};
-
-enum workload {HIGH, MEDIUM, LOW};
-enum policy_to_use {
-       TRAFFIC,
-       TIME,
-       WORKLOAD,
-       BRANCH_RATIO
-};
-
-struct traffic {
-       uint32_t min_packet_thresh;
-       uint32_t avg_max_packet_thresh;
-       uint32_t max_max_packet_thresh;
-};
-
-#define CORE_TYPE_VIRTUAL 0
-#define CORE_TYPE_PHYSICAL 1
-
-struct channel_packet {
-       uint64_t resource_id; /**< core_num, device */
-       uint32_t unit;        /**< scale down/up/min/max */
-       uint32_t command;     /**< Power, IO, etc */
-       char vm_name[VM_MAX_NAME_SZ];
-
-       uint64_t vfid[MAX_VFS];
-       int nb_mac_to_monitor;
-       struct traffic traffic_policy;
-       uint8_t vcpu_to_control[MAX_VCPU_PER_VM];
-       uint8_t num_vcpu;
-       struct timer_profile timer_policy;
-       bool core_type;
-       enum workload workload;
-       enum policy_to_use policy_to_use;
-       struct t_boost_status t_boost_status;
-};
-
-struct channel_packet_freq_list {
-       uint64_t resource_id; /**< core_num, device */
-       uint32_t unit;        /**< scale down/up/min/max */
-       uint32_t command;     /**< Power, IO, etc */
-       char vm_name[VM_MAX_NAME_SZ];
-
-       uint32_t freq_list[MAX_VCPU_PER_VM];
-       uint8_t num_vcpu;
-};
-
-struct channel_packet_caps_list {
-       uint64_t resource_id; /**< core_num, device */
-       uint32_t unit;        /**< scale down/up/min/max */
-       uint32_t command;     /**< Power, IO, etc */
-       char vm_name[VM_MAX_NAME_SZ];
-
-       uint64_t turbo[MAX_VCPU_PER_VM];
-       uint64_t priority[MAX_VCPU_PER_VM];
-       uint8_t num_vcpu;
-};
-
-
-#ifdef __cplusplus
-}
-#endif
-
-#endif /* CHANNEL_COMMANDS_H_ */
index 7b5926e..4cb5ae1 100644 (file)
@@ -17,7 +17,7 @@
 #include <rte_log.h>
 
 #include "guest_channel.h"
-#include "channel_commands.h"
+#include "rte_power_guest_channel.h"
 
 #define RTE_LOGTYPE_GUEST_CHANNEL RTE_LOGTYPE_USER1
 
index e15db46..d3d87f0 100644 (file)
@@ -8,7 +8,7 @@
 extern "C" {
 #endif
 
-#include <channel_commands.h>
+#include <rte_power_guest_channel.h>
 
 /**
  * Check if any Virtio-Serial VM end-points exist in path.
index 409c3e0..649ebe8 100644 (file)
@@ -7,7 +7,7 @@
 #include <rte_log.h>
 
 #include "guest_channel.h"
-#include "channel_commands.h"
+#include "rte_power_guest_channel.h"
 #include "power_kvm_vm.h"
 #include "power_common.h"
 
diff --git a/lib/librte_power/rte_power_guest_channel.h b/lib/librte_power/rte_power_guest_channel.h
new file mode 100644 (file)
index 0000000..ef3b064
--- /dev/null
@@ -0,0 +1,124 @@
+/* SPDX-License-Identifier: BSD-3-Clause
+ * Copyright(c) 2010-2021 Intel Corporation
+ */
+#ifndef RTE_POWER_GUEST_CHANNEL_H
+#define RTE_POWER_GUEST_CHANNEL_H
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include <stdint.h>
+#include <stdbool.h>
+
+/* --- Incoming messages --- */
+
+/* Valid Commands */
+#define CPU_POWER               1
+#define CPU_POWER_CONNECT       2
+#define PKT_POLICY              3
+#define PKT_POLICY_REMOVE       4
+
+/* CPU Power Command Scaling */
+#define CPU_POWER_SCALE_UP      1
+#define CPU_POWER_SCALE_DOWN    2
+#define CPU_POWER_SCALE_MAX     3
+#define CPU_POWER_SCALE_MIN     4
+#define CPU_POWER_ENABLE_TURBO  5
+#define CPU_POWER_DISABLE_TURBO 6
+
+/* CPU Power Queries */
+#define CPU_POWER_QUERY_FREQ_LIST  7
+#define CPU_POWER_QUERY_FREQ       8
+#define CPU_POWER_QUERY_CAPS_LIST  9
+#define CPU_POWER_QUERY_CAPS       10
+
+/* --- Outgoing messages --- */
+
+/* Generic Power Command Response */
+#define CPU_POWER_CMD_ACK       1
+#define CPU_POWER_CMD_NACK      2
+
+/* CPU Power Query Responses */
+#define CPU_POWER_FREQ_LIST     3
+#define CPU_POWER_CAPS_LIST     4
+
+#define HOURS 24
+
+#define MAX_VFS 10
+#define VM_MAX_NAME_SZ 32
+
+#define MAX_VCPU_PER_VM         8
+
+struct t_boost_status {
+       bool tbEnabled;
+};
+
+struct timer_profile {
+       int busy_hours[HOURS];
+       int quiet_hours[HOURS];
+       int hours_to_use_traffic_profile[HOURS];
+};
+
+enum workload {HIGH, MEDIUM, LOW};
+enum policy_to_use {
+       TRAFFIC,
+       TIME,
+       WORKLOAD,
+       BRANCH_RATIO
+};
+
+struct traffic {
+       uint32_t min_packet_thresh;
+       uint32_t avg_max_packet_thresh;
+       uint32_t max_max_packet_thresh;
+};
+
+#define CORE_TYPE_VIRTUAL 0
+#define CORE_TYPE_PHYSICAL 1
+
+struct channel_packet {
+       uint64_t resource_id; /**< core_num, device */
+       uint32_t unit;        /**< scale down/up/min/max */
+       uint32_t command;     /**< Power, IO, etc */
+       char vm_name[VM_MAX_NAME_SZ];
+
+       uint64_t vfid[MAX_VFS];
+       int nb_mac_to_monitor;
+       struct traffic traffic_policy;
+       uint8_t vcpu_to_control[MAX_VCPU_PER_VM];
+       uint8_t num_vcpu;
+       struct timer_profile timer_policy;
+       bool core_type;
+       enum workload workload;
+       enum policy_to_use policy_to_use;
+       struct t_boost_status t_boost_status;
+};
+
+struct channel_packet_freq_list {
+       uint64_t resource_id; /**< core_num, device */
+       uint32_t unit;        /**< scale down/up/min/max */
+       uint32_t command;     /**< Power, IO, etc */
+       char vm_name[VM_MAX_NAME_SZ];
+
+       uint32_t freq_list[MAX_VCPU_PER_VM];
+       uint8_t num_vcpu;
+};
+
+struct channel_packet_caps_list {
+       uint64_t resource_id; /**< core_num, device */
+       uint32_t unit;        /**< scale down/up/min/max */
+       uint32_t command;     /**< Power, IO, etc */
+       char vm_name[VM_MAX_NAME_SZ];
+
+       uint64_t turbo[MAX_VCPU_PER_VM];
+       uint64_t priority[MAX_VCPU_PER_VM];
+       uint8_t num_vcpu;
+};
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* RTE_POWER_GUEST_CHANNEL_H_ */