[llvm-dev] TSAN hack on AArch64 for Android

Jason Kim via llvm-dev llvm-dev at lists.llvm.org
Fri Aug 28 10:02:45 PDT 2015


 

IMO having to disable 2/3 of the tests means the patch isn't ready yet.

[ jasonk --> ]  OK, that’s a fair view.  However, please keep in mind the follwing:

 

(*) The tests weren’t all stable to begin with. 

(*) I am perfectly willing to triage the failures, but please keep in mind that any “threshold” that we cross from NOT testing TSAN on aarch64+android to actually testing on it is going to be a large hurdle. 

(*) BIONIC is NOT glibc!

(*) Its pretty darn near impossible to  have the perfect patch, which is [a] small [b] doesn’t break anything [c] adds major new features. 

(*) What I have currently is: [a] not very big [b] doesn’t break anything VISIBLY [c] adds major new features

(*) The new feature (TSAN on aarch64-linux-androideabi) is currently turned OFF by default

(*) There are plenty of cases in prior history in llvm where a set of tests were turned off temporarily, especially when a major new platform is being introduced. I don’t think its unreasonable to have that as a starting point.

 

On Fri, Aug 28, 2015 at 9:31 AM, Jason Kim <jasonk at codeaurora.org <mailto:jasonk at codeaurora.org> > wrote:



 > -----Original Message-----
 > From: Renato Golin [mailto:renato.golin at linaro.org <mailto:renato.golin at linaro.org> ]
> > TESTS!
 > >  Currently, about 2/3 tests for tsan fail/flake on android+aarch64.
 > > They aren't xfailed, because some of them are flaky, and thus
 > unexpectedly pass at times.
 > > So I decided to mark them as unsupported on android+aarch64, and thus
 > is "green".
 >
 > So, if they currently pass on the production buildbots, you can't mark them
 > as unstable because of your patch, as that will mean your patch is making
 > them unstable, and we can't just make dozens of tests unstable for any
 > amount of features.

[ jasonk --> ] The tests, AFAIK, currently "pass" for a somewhat squiggly definition of "pass".
I get occasional fails on a local x86_64 build, w/o my patches.

 > If your patch introduces the instability, you'll have to fix them before

[ jasonk --> ] The instabilities were there to begin with, AFAIK. Some of the tests are run on a "deflake" regimen where they are repeated 10x, looking for a specific output.

 > commit. That's why I suggested splitting it into many small chunks, none of
 > which will leave the tree in an unstable state, because you'll have time to
 > look at each instability individually, and fix them before commit. The bots
 > will also be happier, and every one wins.

[ jasonk --> ]  Sorry, but I don't understand what you want here. The tests I touched are marked unsupported (i.e. won't be run at all) ONLY for aarch64-linux-androideabi. Is there something else you want? It should not impact any other configuration of TSAN/compiler-rt as-is. I also guard TSAN with a CMAKE variable so that it only gets built for aarch64 iff COMPILER_RT_FORCE_TSAN_AARCH64=1



 > cheers,
 > -renato

Thanks!
-Jason



 

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20150828/c011c514/attachment.html>


More information about the llvm-dev mailing list