[PATCH] D18378: Fix test failure on unrelated warnings.
Dmitry Vyukov via llvm-commits
llvm-commits at lists.llvm.org
Wed Mar 23 04:13:34 PDT 2016
dvyukov added a comment.
Printing the "WARNING: Program is run with randomized virtual address space, which wouldn't work with ThreadSanitizer" all the time is not OK. It's definitely not OK for x86_64. There are programs that generate machine-parsable output (other programs), and it is not OK to alter their output unless there is a bug.
I LGTMed the change for arm64 because as far as I understand tsan will just stop working as users upgrade to newer kernels. But it is not OK to alter program output all the time on arm64 either. So I assumed that the supported way to run tsan programs on arm64 now is to disable ASLR beforehand (unless until we have a better fix for the shadow mapping problem).
Based on that the right fix is to run tsan tests on arm64 with ASLR pre-disabled in the test driver (because that's we expect users to do now).
I understand that it is suboptimal for users, but at least tsan is working for them now (and hopefully majority of programs won't fail because of the additional output, so users can just ignore that warning). Long-term we may want to improve shadow memory mapping on arm64 so that it supports ASLR (Renato expressed concerns about the mapping slowdown and it is still an open question how to do it without the additional slowdown).
More information about the llvm-commits