From 9b133b42ab687224ee1a8342cf729c8d477a6170 Mon Sep 17 00:00:00 2001 From: Anatoly Burakov Date: Fri, 19 Jun 2020 11:53:50 +0100 Subject: [PATCH] examples/l3fwd-power: allow only supported environments Currently, l3fwd-power will attempt to run even if the power env is set to KVM, which is not supported. Fix this by preventing the app from initializing unless the env is set to one of the supported modes. Signed-off-by: Anatoly Burakov Tested-by: Yinan Wang --- examples/l3fwd-power/main.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/examples/l3fwd-power/main.c b/examples/l3fwd-power/main.c index 2cc5d7b121..5cee9d5387 100644 --- a/examples/l3fwd-power/main.c +++ b/examples/l3fwd-power/main.c @@ -2043,6 +2043,7 @@ static int check_ptype(uint16_t portid) static int init_power_library(void) { + enum power_management_env env; unsigned int lcore_id; int ret = 0; @@ -2055,6 +2056,14 @@ init_power_library(void) lcore_id); return ret; } + /* we're not supporting the VM channel mode */ + env = rte_power_get_env(); + if (env != PM_ENV_ACPI_CPUFREQ && + env != PM_ENV_PSTATE_CPUFREQ) { + RTE_LOG(ERR, POWER, + "Only ACPI and PSTATE mode are supported\n"); + return -1; + } } return ret; } -- 2.20.1