diff options
author | Klement Sekera <ksekera@cisco.com> | 2017-03-02 11:27:11 +0100 |
---|---|---|
committer | Damjan Marion <dmarion.lists@gmail.com> | 2017-03-06 16:17:21 +0000 |
commit | 80a7f0a81cf6bc58cd7567c7b5e1c75813b5fc0c (patch) | |
tree | 3018ec9e23adc8c85bb3aed3f329c5e6529dff88 | |
parent | c8c44ebea155f15a9e3067fe05228a1e932185fc (diff) |
make test: tell vpp to set coredump size
Unless overridden by COREDUMP_SIZE env variable, tell VPP to set
coredump size to unlimited, otherwise use $COREDUMP_SIZE as
the argument.
Change-Id: Ia2a6508207c66a171b33d272c820b1deb4a83e82
Signed-off-by: Klement Sekera <ksekera@cisco.com>
-rw-r--r-- | test/Makefile | 3 | ||||
-rw-r--r-- | test/framework.py | 17 |
2 files changed, 14 insertions, 6 deletions
diff --git a/test/Makefile b/test/Makefile index 25c8e0a82a0..52980b9e8b9 100644 --- a/test/Makefile +++ b/test/Makefile @@ -147,6 +147,9 @@ help: @echo " TEST='*.*.test_add_bfd' selects all test functions named test_add_bfd from all files/classes" @echo "" @echo " VPP_ZOMBIE_NOCHECK=1 - skip checking for vpp (zombie) processes (CAUTION)" + @echo " COREDUMP_SIZE=<size> - pass <size> as unix { coredump-size <size> } argument to vpp" + @echo " e.g. COREDUMP_SIZE=4g" + @echo " COREDUMP_SIZE=unlimited" @echo "" @echo "Creating test documentation" @echo " test-doc - generate documentation for test framework" diff --git a/test/framework.py b/test/framework.py index 3bbd37d5d59..b9a09de277e 100644 --- a/test/framework.py +++ b/test/framework.py @@ -110,10 +110,6 @@ class VppTestCase(unittest.TestCase): return dl = d.lower() if dl == "core": - if resource.getrlimit(resource.RLIMIT_CORE)[0] <= 0: - # give a heads up if this is actually useless - print(colorize("WARNING: core size limit is set 0, core files " - "will NOT be created", RED)) cls.debug_core = True elif dl == "gdb": cls.debug_gdb = True @@ -140,8 +136,17 @@ class VppTestCase(unittest.TestCase): debug_cli = "" if cls.step or cls.debug_gdb or cls.debug_gdbserver: debug_cli = "cli-listen localhost:5002" - cls.vpp_cmdline = [cls.vpp_bin, - "unix", "{", "nodaemon", debug_cli, "}", + coredump_size = None + try: + size = os.getenv("COREDUMP_SIZE") + if size is not None: + coredump_size = "coredump-size %s" % size + except: + pass + if coredump_size is None: + coredump_size = "coredump-size unlimited" + cls.vpp_cmdline = [cls.vpp_bin, "unix", + "{", "nodaemon", debug_cli, coredump_size, "}", "api-trace", "{", "on", "}", "api-segment", "{", "prefix", cls.shm_prefix, "}"] if cls.plugin_path is not None: |