patches for DPDK stable branches
 help / color / mirror / Atom feed
* [dpdk-stable] patch 'test: fix result printing' has been queued to LTS release 17.11.4
@ 2018-08-13 20:37 Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'test: fix code on report' " Yongseok Koh
                   ` (7 more replies)
  0 siblings, 8 replies; 9+ messages in thread
From: Yongseok Koh @ 2018-08-13 20:37 UTC (permalink / raw)
  To: Anatoly Burakov; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 17.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/15/18. So please
shout if anyone has objections.

Thanks.

Yongseok

---
>From 53a9227d8176d6010516fc28e6b132ffedadbb4b Mon Sep 17 00:00:00 2001
From: Anatoly Burakov <anatoly.burakov@intel.com>
Date: Fri, 27 Jul 2018 10:40:11 +0100
Subject: [PATCH] test: fix result printing

[ upstream commit 9c197a2389730e0a1ad9473a5c3fb127a36d6f12 ]

Previously, printing was done using tuple syntax, which caused
output to appear as a tuple as opposed to being one string. Fix
this by using addition operator instead.

Fixes: 54ca545dce4b ("make python scripts python2/3 compliant")

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
 test/test/autotest_runner.py | 6 +++---
 1 file changed, 3 insertions(+), 3 deletions(-)

diff --git a/test/test/autotest_runner.py b/test/test/autotest_runner.py
index fc882ec05..380d0589d 100644
--- a/test/test/autotest_runner.py
+++ b/test/test/autotest_runner.py
@@ -275,7 +275,7 @@ class AutotestRunner:
 
             # don't print out total time every line, it's the same anyway
             if i == len(results) - 1:
-                print(result,
+                print(result +
                       "[%02dm %02ds]" % (total_time / 60, total_time % 60))
             else:
                 print(result)
@@ -360,8 +360,8 @@ class AutotestRunner:
 
             # create table header
             print("")
-            print("Test name".ljust(30), "Test result".ljust(29),
-                  "Test".center(9), "Total".center(9))
+            print("Test name".ljust(30) + "Test result".ljust(29) +
+                  "Test".center(9) + "Total".center(9))
             print("=" * 80)
 
             # make a note of tests start time
-- 
2.11.0

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dpdk-stable] patch 'test: fix code on report' has been queued to LTS release 17.11.4
  2018-08-13 20:37 [dpdk-stable] patch 'test: fix result printing' has been queued to LTS release 17.11.4 Yongseok Koh
@ 2018-08-13 20:37 ` Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'test: make autotest runner python 2/3 compliant' " Yongseok Koh
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Yongseok Koh @ 2018-08-13 20:37 UTC (permalink / raw)
  To: Anatoly Burakov; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 17.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/15/18. So please
shout if anyone has objections.

Thanks.

Yongseok

---
>From 7357090c23be7060c1f2caad64517c7be326ecad Mon Sep 17 00:00:00 2001
From: Anatoly Burakov <anatoly.burakov@intel.com>
Date: Fri, 27 Jul 2018 10:40:12 +0100
Subject: [PATCH] test: fix code on report

[ upstream commit 5a6feec6c89aa657ad9d2568379da6d71d4433c3 ]

There are no reports defined for any test, so this codepath was
never triggered, but it's still wrong because it's referencing
variables that aren't there. Fix it by passing target into the
test function, and reference correct log variable.

Fixes: e2cc79b75d9f ("app: rework autotest.py")

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
 test/test/autotest_runner.py | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/test/test/autotest_runner.py b/test/test/autotest_runner.py
index 380d0589d..ff7a2653c 100644
--- a/test/test/autotest_runner.py
+++ b/test/test/autotest_runner.py
@@ -69,7 +69,7 @@ def wait_prompt(child):
 # quite a bit of effort to make it work).
 
 
-def run_test_group(cmdline, test_group):
+def run_test_group(cmdline, target, test_group):
     results = []
     child = None
     start_time = time.time()
@@ -156,14 +156,15 @@ def run_test_group(cmdline, test_group):
             # make a note when the test was finished
             end_time = time.time()
 
+            log = logfile.getvalue()
+
             # append test data to the result tuple
-            result += (test["Name"], end_time - start_time,
-                       logfile.getvalue())
+            result += (test["Name"], end_time - start_time, log)
 
             # call report function, if any defined, and supply it with
             # target and complete log for test run
             if test["Report"]:
-                report = test["Report"](self.target, log)
+                report = test["Report"](target, log)
 
                 # append report to results tuple
                 result += (report,)
@@ -371,6 +372,7 @@ class AutotestRunner:
             for test_group in self.parallel_test_groups:
                 result = pool.apply_async(run_test_group,
                                           [self.__get_cmdline(test_group),
+                                           self.target,
                                            test_group])
                 results.append(result)
 
@@ -395,7 +397,7 @@ class AutotestRunner:
             # run non_parallel tests. they are run one by one, synchronously
             for test_group in self.non_parallel_test_groups:
                 group_result = run_test_group(
-                    self.__get_cmdline(test_group), test_group)
+                    self.__get_cmdline(test_group), self.target, test_group)
 
                 self.__process_results(group_result)
 
-- 
2.11.0

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dpdk-stable] patch 'test: make autotest runner python 2/3 compliant' has been queued to LTS release 17.11.4
  2018-08-13 20:37 [dpdk-stable] patch 'test: fix result printing' has been queued to LTS release 17.11.4 Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'test: fix code on report' " Yongseok Koh
@ 2018-08-13 20:37 ` Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'test: print autotest categories' " Yongseok Koh
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Yongseok Koh @ 2018-08-13 20:37 UTC (permalink / raw)
  To: Anatoly Burakov; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 17.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/15/18. So please
shout if anyone has objections.

Thanks.

Yongseok

---
>From 18c7410b62766466b84f213cf232aca0f933bada Mon Sep 17 00:00:00 2001
From: Anatoly Burakov <anatoly.burakov@intel.com>
Date: Fri, 27 Jul 2018 10:40:13 +0100
Subject: [PATCH] test: make autotest runner python 2/3 compliant

[ upstream commit 3efeed3db348ab560dd2413c6205216745f84088 ]

Autotest runner was still using python 2-style print syntax. Fix
it by importing print function from the future, and fix the calls
to be python-3 style.

Fixes: 54ca545dce4b ("make python scripts python2/3 compliant")

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
 test/test/autotest_runner.py | 7 ++++---
 1 file changed, 4 insertions(+), 3 deletions(-)

diff --git a/test/test/autotest_runner.py b/test/test/autotest_runner.py
index ff7a2653c..746df021b 100644
--- a/test/test/autotest_runner.py
+++ b/test/test/autotest_runner.py
@@ -31,6 +31,7 @@
 
 # The main logic behind running autotests in parallel
 
+from __future__ import print_function
 import StringIO
 import csv
 import multiprocessing
@@ -80,8 +81,8 @@ def run_test_group(cmdline, target, test_group):
         # prepare logging of init
         startuplog = StringIO.StringIO()
 
-        print >>startuplog, "\n%s %s\n" % ("=" * 20, test_group["Prefix"])
-        print >>startuplog, "\ncmdline=%s" % cmdline
+        print("\n%s %s\n" % ("=" * 20, test_group["Prefix"]), file=startuplog)
+        print("\ncmdline=%s" % cmdline, file=startuplog)
 
         child = pexpect.spawn(cmdline, logfile=startuplog)
 
@@ -145,7 +146,7 @@ def run_test_group(cmdline, target, test_group):
 
         try:
             # print test name to log buffer
-            print >>logfile, "\n%s %s\n" % ("-" * 20, test["Name"])
+            print("\n%s %s\n" % ("-" * 20, test["Name"]), file=logfile)
 
             # run test function associated with the test
             if stripped or test["Command"] in avail_cmds:
-- 
2.11.0

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dpdk-stable] patch 'test: print autotest categories' has been queued to LTS release 17.11.4
  2018-08-13 20:37 [dpdk-stable] patch 'test: fix result printing' has been queued to LTS release 17.11.4 Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'test: fix code on report' " Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'test: make autotest runner python 2/3 compliant' " Yongseok Koh
@ 2018-08-13 20:37 ` Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'test: improve filtering' " Yongseok Koh
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Yongseok Koh @ 2018-08-13 20:37 UTC (permalink / raw)
  To: Anatoly Burakov; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 17.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/15/18. So please
shout if anyone has objections.

Thanks.

Yongseok

---
>From d5ad86b3816d2dc5718e6ef675477cea48642d8e Mon Sep 17 00:00:00 2001
From: Anatoly Burakov <anatoly.burakov@intel.com>
Date: Fri, 27 Jul 2018 10:40:14 +0100
Subject: [PATCH] test: print autotest categories

[ upstream commit b48188f417bf04f767e59c1da7d49462a2bcac8c ]

Help visually identify parallel vs. non-parallel autotests.

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
 test/test/autotest_runner.py | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/test/test/autotest_runner.py b/test/test/autotest_runner.py
index 746df021b..4c02af17b 100644
--- a/test/test/autotest_runner.py
+++ b/test/test/autotest_runner.py
@@ -369,6 +369,7 @@ class AutotestRunner:
             # make a note of tests start time
             self.start = time.time()
 
+            print("Parallel autotests:")
             # assign worker threads to run test groups
             for test_group in self.parallel_test_groups:
                 result = pool.apply_async(run_test_group,
@@ -395,6 +396,7 @@ class AutotestRunner:
                     # remove result from results list once we're done with it
                     results.remove(group_result)
 
+            print("Non-parallel autotests:")
             # run non_parallel tests. they are run one by one, synchronously
             for test_group in self.non_parallel_test_groups:
                 group_result = run_test_group(
-- 
2.11.0

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dpdk-stable] patch 'test: improve filtering' has been queued to LTS release 17.11.4
  2018-08-13 20:37 [dpdk-stable] patch 'test: fix result printing' has been queued to LTS release 17.11.4 Yongseok Koh
                   ` (2 preceding siblings ...)
  2018-08-13 20:37 ` [dpdk-stable] patch 'test: print autotest categories' " Yongseok Koh
@ 2018-08-13 20:37 ` Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'mk: update targets for classified tests' " Yongseok Koh
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Yongseok Koh @ 2018-08-13 20:37 UTC (permalink / raw)
  To: Anatoly Burakov; +Cc: dpdk stable

Hi,

FYI, your patch has been queued to LTS release 17.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/15/18. So please
shout if anyone has objections.

Thanks.

Yongseok

---
>From a0a51cb787d98cd90f59c955061b5b88beb0f27d Mon Sep 17 00:00:00 2001
From: Anatoly Burakov <anatoly.burakov@intel.com>
Date: Fri, 27 Jul 2018 10:40:15 +0100
Subject: [PATCH] test: improve filtering

[ upstream commit 71d97e03d812713715e409e18f2e27134cfdcd92 ]

Improve code for filtering test groups. Also, move reading binary
symbols into filtering stage, so that tests that are meant to be
skipped are never attempted to be executed in the first place.
Before running tests, print out any tests that were skipped because
they weren't compiled.

Signed-off-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
 test/test/autotest_runner.py | 118 ++++++++++++++++++++++++-------------------
 1 file changed, 66 insertions(+), 52 deletions(-)

diff --git a/test/test/autotest_runner.py b/test/test/autotest_runner.py
index 4c02af17b..c6a9105b1 100644
--- a/test/test/autotest_runner.py
+++ b/test/test/autotest_runner.py
@@ -123,13 +123,6 @@ def run_test_group(cmdline, target, test_group):
     results.append((0, "Success", "Start %s" % test_group["Prefix"],
                     time.time() - start_time, startuplog.getvalue(), None))
 
-    # parse the binary for available test commands
-    binary = cmdline.split()[0]
-    stripped = 'not stripped' not in subprocess.check_output(['file', binary])
-    if not stripped:
-        symbols = subprocess.check_output(['nm', binary]).decode('utf-8')
-        avail_cmds = re.findall('test_register_(\w+)', symbols)
-
     # run all tests in test group
     for test in test_group["Tests"]:
 
@@ -149,10 +142,7 @@ def run_test_group(cmdline, target, test_group):
             print("\n%s %s\n" % ("-" * 20, test["Name"]), file=logfile)
 
             # run test function associated with the test
-            if stripped or test["Command"] in avail_cmds:
-                result = test["Func"](child, test["Command"])
-            else:
-                result = (0, "Skipped [Not Available]")
+            result = test["Func"](child, test["Command"])
 
             # make a note when the test was finished
             end_time = time.time()
@@ -214,8 +204,10 @@ class AutotestRunner:
     def __init__(self, cmdline, target, blacklist, whitelist):
         self.cmdline = cmdline
         self.target = target
+        self.binary = cmdline.split()[0]
         self.blacklist = blacklist
         self.whitelist = whitelist
+        self.skipped = []
 
         # log file filename
         logfile = "%s.log" % target
@@ -304,53 +296,58 @@ class AutotestRunner:
             if i != 0:
                 self.csvwriter.writerow([test_name, test_result, result_str])
 
-    # this function iterates over test groups and removes each
-    # test that is not in whitelist/blacklist
-    def __filter_groups(self, test_groups):
-        groups_to_remove = []
-
-        # filter out tests from parallel test groups
-        for i, test_group in enumerate(test_groups):
-
-            # iterate over a copy so that we could safely delete individual
-            # tests
-            for test in test_group["Tests"][:]:
-                test_id = test["Command"]
-
-                # dump tests are specified in full e.g. "Dump_mempool"
-                if "_autotest" in test_id:
-                    test_id = test_id[:-len("_autotest")]
-
-                # filter out blacklisted/whitelisted tests
-                if self.blacklist and test_id in self.blacklist:
-                    test_group["Tests"].remove(test)
-                    continue
-                if self.whitelist and test_id not in self.whitelist:
-                    test_group["Tests"].remove(test)
-                    continue
-
-            # modify or remove original group
-            if len(test_group["Tests"]) > 0:
-                test_groups[i] = test_group
-            else:
-                # remember which groups should be deleted
-                # put the numbers backwards so that we start
-                # deleting from the end, not from the beginning
-                groups_to_remove.insert(0, i)
+    # this function checks individual test and decides if this test should be in
+    # the group by comparing it against  whitelist/blacklist. it also checks if
+    # the test is compiled into the binary, and marks it as skipped if necessary
+    def __filter_test(self, test):
+        test_cmd = test["Command"]
+        test_id = test_cmd
+
+        # dump tests are specified in full e.g. "Dump_mempool"
+        if "_autotest" in test_id:
+            test_id = test_id[:-len("_autotest")]
+
+        # filter out blacklisted/whitelisted tests
+        if self.blacklist and test_id in self.blacklist:
+            return False
+        if self.whitelist and test_id not in self.whitelist:
+            return False
+
+        # if test wasn't compiled in, remove it as well
+
+        # parse the binary for available test commands
+        stripped = 'not stripped' not in \
+                   subprocess.check_output(['file', self.binary])
+        if not stripped:
+            symbols = subprocess.check_output(['nm',
+                                               self.binary]).decode('utf-8')
+            avail_cmds = re.findall('test_register_(\w+)', symbols)
+
+            if test_cmd not in avail_cmds:
+                # notify user
+                result = 0, "Skipped [Not compiled]", test_id, 0, "", None
+                self.skipped.append(tuple(result))
+                return False
 
-        # remove test groups that need to be removed
-        for i in groups_to_remove:
-            del test_groups[i]
+        return True
 
-        return test_groups
+    def __filter_group(self, group):
+        group["Tests"] = list(filter(self.__filter_test, group["Tests"]))
+        return len(group["Tests"]) > 0
 
     # iterate over test groups and run tests associated with them
     def run_all_tests(self):
         # filter groups
-        self.parallel_test_groups = \
-            self.__filter_groups(self.parallel_test_groups)
-        self.non_parallel_test_groups = \
-            self.__filter_groups(self.non_parallel_test_groups)
+        # for each test group, check all tests against the filter, then remove
+        # all groups that don't have any tests
+        self.parallel_test_groups = list(
+            filter(self.__filter_group,
+                   self.parallel_test_groups)
+        )
+        self.non_parallel_test_groups = list(
+            filter(self.__filter_group,
+                   self.non_parallel_test_groups)
+        )
 
         # create a pool of worker threads
         pool = multiprocessing.Pool(processes=1)
@@ -366,6 +363,23 @@ class AutotestRunner:
                   "Test".center(9) + "Total".center(9))
             print("=" * 80)
 
+            # print out skipped autotests if there were any
+            if len(self.skipped):
+                print("Skipped autotests:")
+
+                # print out any skipped tests
+                for result in self.skipped:
+                    # unpack result tuple
+                    test_result, result_str, test_name, _, _, _ = result
+                    self.csvwriter.writerow([test_name, test_result,
+                                             result_str])
+
+                    t = ("%s:" % test_name).ljust(30)
+                    t += result_str.ljust(29)
+                    t += "[00m 00s]"
+
+                    print(t)
+
             # make a note of tests start time
             self.start = time.time()
 
-- 
2.11.0

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dpdk-stable] patch 'mk: update targets for classified tests' has been queued to LTS release 17.11.4
  2018-08-13 20:37 [dpdk-stable] patch 'test: fix result printing' has been queued to LTS release 17.11.4 Yongseok Koh
                   ` (3 preceding siblings ...)
  2018-08-13 20:37 ` [dpdk-stable] patch 'test: improve filtering' " Yongseok Koh
@ 2018-08-13 20:37 ` Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'mk: remove unnecessary test rules' " Yongseok Koh
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 9+ messages in thread
From: Yongseok Koh @ 2018-08-13 20:37 UTC (permalink / raw)
  To: Jananee Parthasarathy; +Cc: Reshma Pattan, Anatoly Burakov, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 17.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/15/18. So please
shout if anyone has objections.

Thanks.

Yongseok

---
>From 5ebb037d4b9981d250ae70397231e38d833fcc2a Mon Sep 17 00:00:00 2001
From: Jananee Parthasarathy <jananeex.m.parthasarathy@intel.com>
Date: Fri, 27 Jul 2018 10:40:19 +0100
Subject: [PATCH] mk: update targets for classified tests

[ upstream commit 37c1401ecc615bc96df2f1d95c192abe9203f4e9 ]

Makefiles are updated with new test case lists.
Test cases are classified as -
P1 - Main test cases,
P2 - Cryptodev/driver test cases,
P3 - Perf test cases which takes longer than 10s,
P4 - Logging/Dump test cases.

Makefile is updated with different targets
for the above classified groups.
Test cases for different targets are listed accordingly.

Signed-off-by: Jananee Parthasarathy <jananeex.m.parthasarathy@intel.com>
Reviewed-by: Reshma Pattan <reshma.pattan@intel.com>
Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
 mk/rte.sdkroot.mk |  4 ++--
 mk/rte.sdktest.mk | 33 +++++++++++++++++++++++++++------
 2 files changed, 29 insertions(+), 8 deletions(-)

diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk
index e2e3effa8..bc82b82ad 100644
--- a/mk/rte.sdkroot.mk
+++ b/mk/rte.sdkroot.mk
@@ -96,8 +96,8 @@ config defconfig showconfigs showversion showversionum:
 cscope gtags tags etags:
 	$(Q)$(RTE_SDK)/devtools/build-tags.sh $@ $T
 
-.PHONY: test test-basic test-fast test-ring test-mempool test-perf coverage
-test test-basic test-fast test-ring test-mempool test-perf coverage:
+.PHONY: test test-basic test-fast test-ring test-mempool test-perf coverage test-drivers test-dump
+test test-basic test-fast test-ring test-mempool test-perf coverage test-drivers test-dump:
 	$(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdktest.mk $@
 
 test: test-build
diff --git a/mk/rte.sdktest.mk b/mk/rte.sdktest.mk
index daeea90fc..b6a489749 100644
--- a/mk/rte.sdktest.mk
+++ b/mk/rte.sdktest.mk
@@ -46,14 +46,35 @@ DIR := $(shell basename $(RTE_OUTPUT))
 #
 # test: launch auto-tests, very simple for now.
 #
-.PHONY: test test-basic test-fast test-perf coverage
+.PHONY: test test-basic test-fast test-perf test-drivers test-dump coverage
 
-PERFLIST=ring_perf,mempool_perf,memcpy_perf,hash_perf,timer_perf
-coverage: BLACKLIST=-$(PERFLIST)
-test-fast: BLACKLIST=-$(PERFLIST)
-test-perf: WHITELIST=$(PERFLIST)
+PERFLIST=ring_perf,mempool_perf,memcpy_perf,hash_perf,timer_perf,\
+         reciprocal_division,reciprocal_division_perf,lpm_perf,red_all,\
+         barrier,hash_multiwriter,timer_racecond,efd,hash_functions,\
+         eventdev_selftest_sw,member_perf,efd_perf,lpm6_perf,red_perf,\
+         distributor_perf,ring_pmd_perf,pmd_perf,ring_perf
+DRIVERSLIST=link_bonding,link_bonding_mode4,link_bonding_rssconf,\
+            cryptodev_sw_mrvl,cryptodev_dpaa2_sec,cryptodev_dpaa_sec,\
+            cryptodev_qat,cryptodev_aesni_mb,cryptodev_openssl,\
+            cryptodev_scheduler,cryptodev_aesni_gcm,cryptodev_null,\
+            cryptodev_sw_snow3g,cryptodev_sw_kasumi,cryptodev_sw_zuc
+DUMPLIST=dump_struct_sizes,dump_mempool,dump_malloc_stats,dump_devargs,\
+         dump_log_types,dump_ring,quit,dump_physmem,dump_memzone,\
+         devargs_autotest
 
-test test-basic test-fast test-perf:
+SPACESTR:=
+SPACESTR+=
+STRIPPED_PERFLIST=$(subst $(SPACESTR),,$(PERFLIST))
+STRIPPED_DRIVERSLIST=$(subst $(SPACESTR),,$(DRIVERSLIST))
+STRIPPED_DUMPLIST=$(subst $(SPACESTR),,$(DUMPLIST))
+
+coverage: BLACKLIST=-$(STRIPPED_PERFLIST)
+test-fast: BLACKLIST=-$(STRIPPED_PERFLIST),$(STRIPPED_DRIVERSLIST),$(STRIPPED_DUMPLIST)
+test-perf: WHITELIST=$(STRIPPED_PERFLIST)
+test-drivers: WHITELIST=$(STRIPPED_DRIVERSLIST)
+test-dump: WHITELIST=$(STRIPPED_DUMPLIST)
+
+test test-basic test-fast test-perf test-drivers test-dump:
 	@mkdir -p $(AUTOTEST_DIR) ; \
 	cd $(AUTOTEST_DIR) ; \
 	if [ -f $(RTE_OUTPUT)/app/test ]; then \
-- 
2.11.0

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dpdk-stable] patch 'mk: remove unnecessary test rules' has been queued to LTS release 17.11.4
  2018-08-13 20:37 [dpdk-stable] patch 'test: fix result printing' has been queued to LTS release 17.11.4 Yongseok Koh
                   ` (4 preceding siblings ...)
  2018-08-13 20:37 ` [dpdk-stable] patch 'mk: update targets for classified tests' " Yongseok Koh
@ 2018-08-13 20:37 ` Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'test: fix uninitialized port configuration' " Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'app/testpmd: fix DCB config' " Yongseok Koh
  7 siblings, 0 replies; 9+ messages in thread
From: Yongseok Koh @ 2018-08-13 20:37 UTC (permalink / raw)
  To: Reshma Pattan; +Cc: Anatoly Burakov, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 17.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/15/18. So please
shout if anyone has objections.

Thanks.

Yongseok

---
>From 026311ab7efb279430afe25999a343cf531bf9f0 Mon Sep 17 00:00:00 2001
From: Reshma Pattan <reshma.pattan@intel.com>
Date: Fri, 27 Jul 2018 10:40:20 +0100
Subject: [PATCH] mk: remove unnecessary test rules

[ upstream commit 9724d127f2d729c7475c4667bc14f95dc17fff8a ]

make rule test-basic is duplicate of test rule.
removed unused test-mempool and test-ring make rules.

Fixes: a3df7f8d9c ("mk: rename test related rules")

Signed-off-by: Reshma Pattan <reshma.pattan@intel.com>
Reviewed-by: Anatoly Burakov <anatoly.burakov@intel.com>
---
 mk/rte.sdkroot.mk | 4 ++--
 mk/rte.sdktest.mk | 7 +++----
 2 files changed, 5 insertions(+), 6 deletions(-)

diff --git a/mk/rte.sdkroot.mk b/mk/rte.sdkroot.mk
index bc82b82ad..2fcf8de80 100644
--- a/mk/rte.sdkroot.mk
+++ b/mk/rte.sdkroot.mk
@@ -96,8 +96,8 @@ config defconfig showconfigs showversion showversionum:
 cscope gtags tags etags:
 	$(Q)$(RTE_SDK)/devtools/build-tags.sh $@ $T
 
-.PHONY: test test-basic test-fast test-ring test-mempool test-perf coverage test-drivers test-dump
-test test-basic test-fast test-ring test-mempool test-perf coverage test-drivers test-dump:
+.PHONY: test test-fast test-perf coverage test-drivers test-dump
+test test-fast test-perf coverage test-drivers test-dump:
 	$(Q)$(MAKE) -f $(RTE_SDK)/mk/rte.sdktest.mk $@
 
 test: test-build
diff --git a/mk/rte.sdktest.mk b/mk/rte.sdktest.mk
index b6a489749..18e03d6e9 100644
--- a/mk/rte.sdktest.mk
+++ b/mk/rte.sdktest.mk
@@ -46,7 +46,7 @@ DIR := $(shell basename $(RTE_OUTPUT))
 #
 # test: launch auto-tests, very simple for now.
 #
-.PHONY: test test-basic test-fast test-perf test-drivers test-dump coverage
+.PHONY: test test-fast test-perf test-drivers test-dump coverage
 
 PERFLIST=ring_perf,mempool_perf,memcpy_perf,hash_perf,timer_perf,\
          reciprocal_division,reciprocal_division_perf,lpm_perf,red_all,\
@@ -59,8 +59,7 @@ DRIVERSLIST=link_bonding,link_bonding_mode4,link_bonding_rssconf,\
             cryptodev_scheduler,cryptodev_aesni_gcm,cryptodev_null,\
             cryptodev_sw_snow3g,cryptodev_sw_kasumi,cryptodev_sw_zuc
 DUMPLIST=dump_struct_sizes,dump_mempool,dump_malloc_stats,dump_devargs,\
-         dump_log_types,dump_ring,quit,dump_physmem,dump_memzone,\
-         devargs_autotest
+         dump_log_types,dump_ring,dump_physmem,dump_memzone
 
 SPACESTR:=
 SPACESTR+=
@@ -74,7 +73,7 @@ test-perf: WHITELIST=$(STRIPPED_PERFLIST)
 test-drivers: WHITELIST=$(STRIPPED_DRIVERSLIST)
 test-dump: WHITELIST=$(STRIPPED_DUMPLIST)
 
-test test-basic test-fast test-perf test-drivers test-dump:
+test test-fast test-perf test-drivers test-dump:
 	@mkdir -p $(AUTOTEST_DIR) ; \
 	cd $(AUTOTEST_DIR) ; \
 	if [ -f $(RTE_OUTPUT)/app/test ]; then \
-- 
2.11.0

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dpdk-stable] patch 'test: fix uninitialized port configuration' has been queued to LTS release 17.11.4
  2018-08-13 20:37 [dpdk-stable] patch 'test: fix result printing' has been queued to LTS release 17.11.4 Yongseok Koh
                   ` (5 preceding siblings ...)
  2018-08-13 20:37 ` [dpdk-stable] patch 'mk: remove unnecessary test rules' " Yongseok Koh
@ 2018-08-13 20:37 ` Yongseok Koh
  2018-08-13 20:37 ` [dpdk-stable] patch 'app/testpmd: fix DCB config' " Yongseok Koh
  7 siblings, 0 replies; 9+ messages in thread
From: Yongseok Koh @ 2018-08-13 20:37 UTC (permalink / raw)
  To: Radu Nicolau; +Cc: Bernard Iremonger, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 17.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/15/18. So please
shout if anyone has objections.

Thanks.

Yongseok

---
>From c8e898dd55c22c6ad7c46cbda60b3463a4b0ce91 Mon Sep 17 00:00:00 2001
From: Radu Nicolau <radu.nicolau@intel.com>
Date: Tue, 31 Jul 2018 15:16:21 +0100
Subject: [PATCH] test: fix uninitialized port configuration

[ upstream commit f5929159465772a1284e9ea1b87462ef2ab90e94 ]

test_pmd_ring_pair_create_attach() uses an uninitialized
struct rte_eth_conf object

Fixes: 51f567129c94 ("app/test: add pmd_ring")

Signed-off-by: Radu Nicolau <radu.nicolau@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
---
 test/test/test_pmd_ring.c | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/test/test/test_pmd_ring.c b/test/test/test_pmd_ring.c
index 2cdf60d10..8d5813cf0 100644
--- a/test/test/test_pmd_ring.c
+++ b/test/test/test_pmd_ring.c
@@ -247,6 +247,8 @@ test_pmd_ring_pair_create_attach(int portd, int porte)
 	struct rte_mbuf buf, *pbuf = &buf;
 	struct rte_eth_conf null_conf;
 
+	memset(&null_conf, 0, sizeof(struct rte_eth_conf));
+
 	if ((rte_eth_dev_configure(portd, 1, 1, &null_conf) < 0)
 		|| (rte_eth_dev_configure(porte, 1, 1, &null_conf) < 0)) {
 		printf("Configure failed for port\n");
-- 
2.11.0

^ permalink raw reply	[flat|nested] 9+ messages in thread

* [dpdk-stable] patch 'app/testpmd: fix DCB config' has been queued to LTS release 17.11.4
  2018-08-13 20:37 [dpdk-stable] patch 'test: fix result printing' has been queued to LTS release 17.11.4 Yongseok Koh
                   ` (6 preceding siblings ...)
  2018-08-13 20:37 ` [dpdk-stable] patch 'test: fix uninitialized port configuration' " Yongseok Koh
@ 2018-08-13 20:37 ` Yongseok Koh
  7 siblings, 0 replies; 9+ messages in thread
From: Yongseok Koh @ 2018-08-13 20:37 UTC (permalink / raw)
  To: Konstantin Ananyev; +Cc: Bernard Iremonger, dpdk stable

Hi,

FYI, your patch has been queued to LTS release 17.11.4

Note it hasn't been pushed to http://dpdk.org/browse/dpdk-stable yet.
It will be pushed if I get no objections before 08/15/18. So please
shout if anyone has objections.

Thanks.

Yongseok

---
>From 5ba02de4781d473d98f256e755410deaf6f52106 Mon Sep 17 00:00:00 2001
From: Konstantin Ananyev <konstantin.ananyev@intel.com>
Date: Tue, 31 Jul 2018 15:43:34 +0100
Subject: [PATCH] app/testpmd: fix DCB config

[ upstream commit ac7c491c3fecb835d637e867467dcf7cc8736828 ]

After adding RSS hash offload check, default rss_hf will fail on devices
that do not support all bits. This will lead to dcb config failure. The
patch fixes this issue by reading current valid rss_conf from the device.

Fixes: 8863a1fbfc66 ("ethdev: add supported hash function check")
Fixes: 1a572499beb6 ("app/testpmd: setup DCB forwarding based on traffic class")

Signed-off-by: Konstantin Ananyev <konstantin.ananyev@intel.com>
Acked-by: Bernard Iremonger <bernard.iremonger@intel.com>
---
 app/test-pmd/testpmd.c | 13 ++++++++++---
 1 file changed, 10 insertions(+), 3 deletions(-)

diff --git a/app/test-pmd/testpmd.c b/app/test-pmd/testpmd.c
index 6aa2f2c7c..32d687172 100644
--- a/app/test-pmd/testpmd.c
+++ b/app/test-pmd/testpmd.c
@@ -2297,12 +2297,14 @@ const uint16_t vlan_tags[] = {
 };
 
 static  int
-get_eth_dcb_conf(struct rte_eth_conf *eth_conf,
+get_eth_dcb_conf(portid_t pid, struct rte_eth_conf *eth_conf,
 		 enum dcb_mode_enable dcb_mode,
 		 enum rte_eth_nb_tcs num_tcs,
 		 uint8_t pfc_en)
 {
 	uint8_t i;
+	int32_t rc;
+	struct rte_eth_rss_conf rss_conf;
 
 	/*
 	 * Builds up the correct configuration for dcb+vt based on the vlan tags array
@@ -2342,6 +2344,10 @@ get_eth_dcb_conf(struct rte_eth_conf *eth_conf,
 		struct rte_eth_dcb_tx_conf *tx_conf =
 				&eth_conf->tx_adv_conf.dcb_tx_conf;
 
+		rc = rte_eth_dev_rss_hash_conf_get(pid, &rss_conf);
+		if (rc != 0)
+			return rc;
+
 		rx_conf->nb_tcs = num_tcs;
 		tx_conf->nb_tcs = num_tcs;
 
@@ -2349,8 +2355,9 @@ get_eth_dcb_conf(struct rte_eth_conf *eth_conf,
 			rx_conf->dcb_tc[i] = i % num_tcs;
 			tx_conf->dcb_tc[i] = i % num_tcs;
 		}
+
 		eth_conf->rxmode.mq_mode = ETH_MQ_RX_DCB_RSS;
-		eth_conf->rx_adv_conf.rss_conf.rss_hf = rss_hf;
+		eth_conf->rx_adv_conf.rss_conf = rss_conf;
 		eth_conf->txmode.mq_mode = ETH_MQ_TX_DCB;
 	}
 
@@ -2381,7 +2388,7 @@ init_port_dcb_config(portid_t pid,
 	dcb_config = 1;
 
 	/*set configuration of DCB in vt mode and DCB in non-vt mode*/
-	retval = get_eth_dcb_conf(&port_conf, dcb_mode, num_tcs, pfc_en);
+	retval = get_eth_dcb_conf(pid, &port_conf, dcb_mode, num_tcs, pfc_en);
 	if (retval < 0)
 		return retval;
 	port_conf.rxmode.hw_vlan_filter = 1;
-- 
2.11.0

^ permalink raw reply	[flat|nested] 9+ messages in thread

end of thread, other threads:[~2018-08-13 20:38 UTC | newest]

Thread overview: 9+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-08-13 20:37 [dpdk-stable] patch 'test: fix result printing' has been queued to LTS release 17.11.4 Yongseok Koh
2018-08-13 20:37 ` [dpdk-stable] patch 'test: fix code on report' " Yongseok Koh
2018-08-13 20:37 ` [dpdk-stable] patch 'test: make autotest runner python 2/3 compliant' " Yongseok Koh
2018-08-13 20:37 ` [dpdk-stable] patch 'test: print autotest categories' " Yongseok Koh
2018-08-13 20:37 ` [dpdk-stable] patch 'test: improve filtering' " Yongseok Koh
2018-08-13 20:37 ` [dpdk-stable] patch 'mk: update targets for classified tests' " Yongseok Koh
2018-08-13 20:37 ` [dpdk-stable] patch 'mk: remove unnecessary test rules' " Yongseok Koh
2018-08-13 20:37 ` [dpdk-stable] patch 'test: fix uninitialized port configuration' " Yongseok Koh
2018-08-13 20:37 ` [dpdk-stable] patch 'app/testpmd: fix DCB config' " Yongseok Koh

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).