diff options
author | Sridhar K. N. Rao <sridhar.rao@spirent.com> | 2017-11-28 16:23:01 +0530 |
---|---|---|
committer | Sridhar K. N. Rao <sridhar.rao@spirent.com> | 2018-01-21 19:16:36 +0530 |
commit | 7243bf4de72f4b795f08f6abe99e05da4c06491b (patch) | |
tree | 97902285abe288be2765005195c98f66f3feb279 /testcases/testcase.py | |
parent | c870b4c5e4360008e17dda745fc9ce11b212f702 (diff) |
llc-management: Support for LLC management with RMD
This patch adds support for LLC-Last level cache
management using RMD. The changes include:
1. 08_llcmanagement.conf: The configuration file to define cache
allocation policy.
2. testcase.py: To trigger llc-allocation and cleanup before and
after the test, respectively.
3. llc_management/rmd.py: The main file the performs the llc
allocation and cleanup.
4. llc_management/resthttp.py: Generic utility to call rest APIs,
with http.
5. Fixed a build error due to change in name mismatch.
6. Fixed pylint errors. Override built-in function error.
7. Added empty __init__.py to avoid import errors
8. Fixed deprecated functions errors
9. Fixed copyright issues, removed python-3 checking.
10. Removed pylint disables.
11. resthttp.py is already part of stcrestclient used in
tools/pkt_gen/testcenter/ scripts. Hence, deleted from the source.
12. Year update from the license
13. Fixed some testcases.py collision issue
JIRA: VSPERF-544
Change-Id: I7cbd155dd66f5a0cef544751841e71b95c9b6821
Signed-off-by: Sridhar K. N. Rao <sridhar.rao@spirent.com>
Diffstat (limited to 'testcases/testcase.py')
-rw-r--r-- | testcases/testcase.py | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/testcases/testcase.py b/testcases/testcase.py index 991c2890..5d4a6ea9 100644 --- a/testcases/testcase.py +++ b/testcases/testcase.py @@ -36,6 +36,7 @@ from tools import functions from tools import namespace from tools import veth from tools.teststepstools import TestStepsTools +from tools.llc_management import rmd CHECK_PREFIX = 'validate_' @@ -185,6 +186,10 @@ class TestCase(object): if step[0].startswith('vnf'): self._step_vnf_list[step[0]] = None + # if llc allocation is required, initialize it. + if S.getValue('LLC_ALLOCATION'): + self._rmd = rmd.CacheAllocator() + def run_initialize(self): """ Prepare test execution environment """ @@ -257,6 +262,10 @@ class TestCase(object): self._step_status = {'status' : True, 'details' : ''} + # Perform LLC-allocations + if S.getValue('LLC_ALLOCATION'): + self._rmd.setup_llc_allocation() + self._logger.debug("Setup:") def run_finalize(self): @@ -265,6 +274,10 @@ class TestCase(object): # Stop all VNFs started by TestSteps in case that something went wrong self.step_stop_vnfs() + # Cleanup any LLC-allocations + if S.getValue('LLC_ALLOCATION'): + self._rmd.cleanup_llc_allocation() + # Stop all processes executed by testcase tasks.terminate_all_tasks(self._logger) |