2
0
mirror of https://github.com/checkpoint-restore/criu synced 2025-08-30 13:58:34 +00:00

zdtm.py: run tests with ASAN_OPTIONS

To run CRIU with ASan we have to use some non-default options:

 - detect_leaks=0 - We have to many leaks for know. Let's disable until fixed.
 - disable_coredump=0 - without this ASan library changes RLIMIT_CORE which
                         break rlmimits00 tests.
 - log_path=asan.log - For some reason default output to stderr sometimes
                        doesn't work in CRIU. So error log will be stored
                        in asan.log.<pid> file instead.

travis-ci: success for series starting with [1/6] compel/infect: fix out-of-bounds parasite memcpy()
Signed-off-by: Andrey Ryabinin <aryabinin@virtuozzo.com>
Reviewed-by: Dmitry Safonov <dsafonov@virtuozzo.com>
Signed-off-by: Pavel Emelyanov <xemul@virtuozzo.com>
This commit is contained in:
Andrey Ryabinin
2017-02-06 13:14:17 +03:00
committed by Andrei Vagin
parent 148929d6d9
commit e23c1d4ed9

View File

@@ -676,10 +676,12 @@ join_ns_file = '/run/netns/zdtm_netns'
class criu_cli: class criu_cli:
@staticmethod @staticmethod
def run(action, args, fault = None, strace = [], preexec = None, nowait = False): def run(action, args, fault = None, strace = [], preexec = None, nowait = False):
env = None env = dict(os.environ, ASAN_OPTIONS = "log_path=asan.log:disable_coredump=0:detect_leaks=0")
if fault: if fault:
print "Forcing %s fault" % fault print "Forcing %s fault" % fault
env = dict(os.environ, CRIU_FAULT = fault) env['CRIU_FAULT'] = fault
cr = subprocess.Popen(strace + [criu_bin, action] + args, env = env, preexec_fn = preexec) cr = subprocess.Popen(strace + [criu_bin, action] + args, env = env, preexec_fn = preexec)
if nowait: if nowait:
return cr return cr