examples:power add command line args to guest app
PATCH 1/1 examples:power add command line args to guest app
Add new command line arguments to the guest app to make testing and validation of the policy usage easier. These arguments are mainly around setting up the power management policy that is sent from the guest vm to to the vm_power_manager in the host
New command line parameters:
-n or --vm-name
sets the name of the vm to be used by the host OS.
-b or --busy-hours
sets the list of hours that are predicted to be busy
-q or --quiet-hours
sets the list of hours that are predicted to be quiet
-l or --vcpu-list
sets the list of vcpus to monitor
-p or --port-list
sets the list of posts to monitor when using a workload policy.
-o or --policy
sets the default policy type
TIME
WORKLOAD
TRAFFIC
BRANCH_RATIO
The format of the hours or list paramers is a comma-separated list of integers, which can take the form of
a. x e.g. --vcpu-list=1
b. x,y e.g. --quiet-hours=3,4
c. x-y e.g. --busy-hours=9-12
d. combination of above (e.g. --busy-hours=4,5-7,9)
--- examples/vm_power_manager/guest_cli/Makefile | 2 +- examples/vm_power_manager/guest_cli/main.c | 149 +++++++++++++++++- examples/vm_power_manager/guest_cli/parse.c | 93 +++++++++++ examples/vm_power_manager/guest_cli/parse.h | 19 +++ .../guest_cli/vm_power_cli_guest.c | 113 +++++++------ .../guest_cli/vm_power_cli_guest.h | 6 + 6 files changed, 328 insertions(+), 54 deletions(-) create mode 100644 examples/vm_power_manager/guest_cli/parse.c create mode 100644 examples/vm_power_manager/guest_cli/parse.h
examples/vm_power_manager/guest_cli/Makefile +1 -1
@@ -14,7 +14,7 @@ include $(RTE_SDK)/mk/rte.vars.mk APP = guest_vm_power_mgr # all source are stored in SRCS-y -SRCS-y := main.c vm_power_cli_guest.c +SRCS-y := main.c vm_power_cli_guest.c parse.c CFLAGS += -O3 -I$(RTE_SDK)/lib/librte_power/ CFLAGS += $(WERROR_FLAGS)
examples/vm_power_manager/guest_cli/main.c +141 -8
176 lines not on this page · raw message
examples/vm_power_manager/guest_cli/parse.c new file +93 -0
93 lines not on this page · raw message
examples/vm_power_manager/guest_cli/parse.h new file +19 -0
@@ -0,0 +1,19 @@ +/* SPDX-License-Identifier: BSD-3-Clause +* Copyright(c) 2018 Intel Corporation +*/ + +#ifndef PARSE_H_ +#define PARSE_H_ + +#ifdef __cplusplus +extern "C" { +#endif + +int +parse_set (const char *,uint16_t [],unsigned int ); + +#ifdef __cplusplus +} +#endif + +#endif /* PARSE_H_ */
examples/vm_power_manager/guest_cli/vm_power_cli_guest.c +68 -45
135 lines not on this page · raw message
examples/vm_power_manager/guest_cli/vm_power_cli_guest.h +6 -0
@@ -11,6 +11,12 @@ extern "C" {#include "channel_commands.h" +struct channel_packet *get_policy (void ); + +int set_policy_mac (int port,int idx); + +void set_policy_defaults (struct channel_packet *pkt); +void run_cli (__attribute__((unused))void *arg);#ifdef __cplusplus
Signature · 1 line
2.17.0