On 07-Mar-19 1:59 PM, Lukasz Krakowiak wrote:
Add UT check_power_turbo.

Signed-off-by: Lukasz Krakowiak <lukaszx.krakow...@intel.com>
---
  app/test/test_power_cpufreq.c | 72 +++++++++++++++++++++++++++++++++++
  1 file changed, 72 insertions(+)

diff --git a/app/test/test_power_cpufreq.c b/app/test/test_power_cpufreq.c
index d099f2f47..c75c9bf1c 100644
--- a/app/test/test_power_cpufreq.c
+++ b/app/test/test_power_cpufreq.c
@@ -366,6 +366,59 @@ check_power_freq_min(void)
        return 0;
  }
+/* Check rte_power_turbo() */
+static int
+check_power_turbo(void)
+{
+       int ret;
+
+       if (rte_power_turbo_status(TEST_POWER_LCORE_ID) == 0) {
+               printf("Turbo not available on lcore %u, skipping test\n",
+               TEST_POWER_LCORE_ID);

Misleading indentation, please add two tabs to the second line of printf() statement.

+               return 0;
+       }
+
+       /* test with an invalid lcore id */
+       ret = rte_power_freq_enable_turbo(TEST_POWER_LCORE_INVALID);
+       if (ret >= 0) {
+               printf("Unexpectedly enable turbo successfully "
+                               "on lcore %u\n", TEST_POWER_LCORE_INVALID);

Please don't break up strings to multiple lines.

+               return -1;
+       }
+       ret = rte_power_freq_enable_turbo(TEST_POWER_LCORE_ID);
+       if (ret < 0) {
+               printf("Fail to enable turbo on lcore %u\n",
+                                                       TEST_POWER_LCORE_ID);

I wish there was a middle ground between no indentation and way too much indentation...

+               return -1;
+       }
+
+       /* Check the current frequency */
+       ret = check_cur_freq(TEST_POWER_LCORE_ID, 0);
+       if (ret < 0)
+               return -1;
+
+       /* test with an invalid lcore id */
+       ret = rte_power_freq_disable_turbo(TEST_POWER_LCORE_INVALID);
+       if (ret >= 0) {
+               printf("Unexpectedly disable turbo successfully "
+                               "on lcore %u\n", TEST_POWER_LCORE_INVALID);

Same as above, don't break up strings.

+               return -1;
+       }
+       ret = rte_power_freq_disable_turbo(TEST_POWER_LCORE_ID);
+       if (ret < 0) {
+               printf("Fail to disable turbo on lcore %u\n",
+                                                       TEST_POWER_LCORE_ID);

Same as above, two tabs is enough indentation.

+               return -1;
+       }
+
+       /* Check the current frequency */
+       ret = check_cur_freq(TEST_POWER_LCORE_ID, 1);
+       if (ret < 0)
+               return -1;
+
+       return 0;
+}
+
  static int
  test_power_cpufreq(void)
  {
@@ -427,6 +480,21 @@ test_power_cpufreq(void)
                                "been initialised\n");
                goto fail_all;
        }
+       if (rte_power_turbo_status == NULL) {
+               printf("rte_power_turbo_status should not be NULL, environment has 
not "
+                               "been initialised\n");

Here and below:

I don't think saying *why* it should not be NULL - just saying that it shouldn't be NULL is enough. Maybe mention why it's supposed to be not NULL in comments here.

Also, i have a suspicion that the message is wrong - why would status be null if the environment was initialized? Presumably it's the other way around?

+               goto fail_all;
+       }
+       if (rte_power_freq_enable_turbo == NULL) {
+               printf("rte_power_freq_enable_turbo should not be NULL, environment 
has not "
+                               "been initialised\n");
+               goto fail_all;
+       }
+       if (rte_power_freq_disable_turbo == NULL) {
+               printf("rte_power_freq_disable_turbo should not be NULL, environment 
has not "
+                               "been initialised\n");
+               goto fail_all;
+       }
ret = rte_power_exit(TEST_POWER_LCORE_ID);
        if (ret < 0) {
@@ -502,6 +570,10 @@ test_power_cpufreq(void)
        if (ret < 0)
                goto fail_all;
+ ret = check_power_turbo();
+       if (ret < 0)
+               goto fail_all;
+
        ret = rte_power_exit(TEST_POWER_LCORE_ID);
        if (ret < 0) {
                printf("Cannot exit power management for lcore %u\n",



--
Thanks,
Anatoly

Reply via email to