Bug 1288596 - Add error limits to tsan and msan, r=terrence

--HG--
extra : rebase_source : b4af996b905299c46389d00a4b16e8fed143e283
This commit is contained in:
Steve Fink 2016-07-29 12:09:10 -07:00
parent 1df7b43d0c
commit bc1904b9c0
3 changed files with 14 additions and 3 deletions

View File

@ -351,7 +351,11 @@ if args.variant in ('tsan', 'msan'):
m = re.match(r'^SUMMARY: \w+Sanitizer: (?:data race|use-of-uninitialized-value) (.*)',
line.strip())
if m:
sites[m.group(1)] += 1
# Some reports include file:line:column, some just
# file:line. Just in case it's nondeterministic, we will
# canonicalize to just the line number.
site = re.sub(r'^(\S+?:\d+)(:\d+)* ', r'\1 ', m.group(1))
sites[site] += 1
# Write a summary file and display it to stdout.
summary_filename = os.path.join(env['MOZ_UPLOAD_DIR'], "%s_summary.txt" % args.variant)
@ -360,6 +364,11 @@ if args.variant in ('tsan', 'msan'):
print >> outfh, "%d %s" % (count, location)
print(open(summary_filename, 'rb').read())
if 'max-errors' in variant:
print("Found %d errors out of %d allowed" % (len(sites), variant['max-errors']))
if len(sites) > variant['max-errors']:
results.append(1)
# Gather individual results into a tarball. Note that these are
# distinguished only by pid of the JS process running within each test, so
# given the 16-bit limitation of pids, it's totally possible that some of

View File

@ -6,5 +6,6 @@
"JITTEST_EXTRA_ARGS": "--jitflags=interp --ignore-timeouts={DIR}/cgc-jittest-timeouts.txt",
"JSTESTS_EXTRA_ARGS": "--jitflags=interp --exclude-file={DIR}/cgc-jstests-slow.txt",
"MSAN_OPTIONS": "log_path={OUTDIR}/sanitize_log"
}
},
"max-errors": 8
}

View File

@ -6,5 +6,6 @@
"JITTEST_EXTRA_ARGS": "--jitflags=debug --ignore-timeouts={DIR}/cgc-jittest-timeouts.txt",
"JSTESTS_EXTRA_ARGS": "--exclude-file={DIR}/cgc-jstests-slow.txt",
"TSAN_OPTIONS": "log_path={OUTDIR}/sanitize_log"
}
},
"max-errors": 14
}