<div dir="ltr">But if it's supported, is this a bug that's going to be fixed? (on either side - platform or compiler) - or is this functionality unsupported on this platform? (if it's flaky, it's hard to say it's supported, that's not a good user experience)</div><br><div class="gmail_quote"><div dir="ltr">On Mon, Oct 16, 2017 at 4:27 PM Evgenii Stepanov <<a href="mailto:eugeni.stepanov@gmail.com">eugeni.stepanov@gmail.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Well, it's an x86 device, so a bit of an oddity, but it is still<br>
supported. It runs an OS release from 2016 (N). It's a reasonable<br>
configuration.<br>
<br>
<br>
On Mon, Oct 16, 2017 at 2:42 PM, David Blaikie <<a href="mailto:dblaikie@gmail.com" target="_blank">dblaikie@gmail.com</a>> wrote:<br>
> Could the device be removed from testing? (is it likely the device that's at<br>
> fault, more than the test - or is it a truly representative, valid device<br>
> where any device in that configuration would have this problem and it's a<br>
> supported configuration (not too old, etc)?)<br>
><br>
> On Mon, Oct 16, 2017 at 2:38 PM Evgenii Stepanov via llvm-commits<br>
> <<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>> wrote:<br>
>><br>
>> For some value of x, p^x is low enough :)<br>
>><br>
>> Seriously speaking, the test is failing on a particular device and I<br>
>> suspect it could be a kernel issue: it is running 3.10, which is quite<br>
>> old. I don't have time to debug it, but I could make the test as<br>
>> failing on (android && i686) which is not the real cause of the error,<br>
>> but it would make the bot green and keep the test exercised on the<br>
>> arm-android device.<br>
>><br>
>> On Mon, Oct 16, 2017 at 2:09 PM, Rui Ueyama via llvm-commits<br>
>> <<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>> wrote:<br>
>> > You cannot fix a flakey test by just running it more than once, can you?<br>
>> > I<br>
>> > mean, the probability of test failure decreases from p to p^3, but it is<br>
>> > still not zero.<br>
>> ><br>
>> > On Mon, Oct 16, 2017 at 2:03 PM, Vitaly Buka via llvm-commits<br>
>> > <<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>> wrote:<br>
>> >><br>
>> >> It does not makes test slower as it passes on all platforms from the<br>
>> >> first<br>
>> >> time.<br>
>> >><br>
>> >> We don't suspect issues with functionally, rather some specific<br>
>> >> platform<br>
>> >> bug.<br>
>> >> Also on Android we know only one device were it fails. And I guess it<br>
>> >> fails only in Asan mode?<br>
>> >> So if we mark it unsupported, it should be very specific.<br>
>> >> E.g. // UNSUPPORTED: android && asan && x86 (not sure if that one is<br>
>> >> 64bit<br>
>> >> and how we exactly recognize x86 on android)<br>
>> >><br>
>> >> On Mon, Oct 16, 2017 at 1:49 PM, David Blaikie via llvm-commits<br>
>> >> <<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>> wrote:<br>
>> >>><br>
>> >>> If this functionality isn't reliable on Android, I think<br>
>> >>> UNSUPPORTED/XFAIL is more appropriate than deflaking like this. The<br>
>> >>> functionality's no good if it fails that much, so why test/support it,<br>
>> >>> making tests slower and risk flakiness creeping in on other platforms<br>
>> >>> due to<br>
>> >>> the more generous testing?<br>
>> >>><br>
>> >>> On Fri, Oct 13, 2017 at 4:57 PM Evgeniy Stepanov via llvm-commits<br>
>> >>> <<a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a>> wrote:<br>
>> >>>><br>
>> >>>> Author: eugenis<br>
>> >>>> Date: Fri Oct 13 16:57:08 2017<br>
>> >>>> New Revision: 315777<br>
>> >>>><br>
>> >>>> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=315777&view=rev" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project?rev=315777&view=rev</a><br>
>> >>>> Log:<br>
>> >>>> [asan] Deflake one test by running it 3 times.<br>
>> >>>><br>
>> >>>> The test seems to trigger an android platform bug under load.<br>
>> >>>><br>
>> >>>> Modified:<br>
>> >>>><br>
>> >>>><br>
>> >>>> compiler-rt/trunk/test/sanitizer_common/TestCases/Linux/allow_user_segv.cc<br>
>> >>>><br>
>> >>>> Modified:<br>
>> >>>><br>
>> >>>> compiler-rt/trunk/test/sanitizer_common/TestCases/Linux/allow_user_segv.cc<br>
>> >>>> URL:<br>
>> >>>><br>
>> >>>> <a href="http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/sanitizer_common/TestCases/Linux/allow_user_segv.cc?rev=315777&r1=315776&r2=315777&view=diff" rel="noreferrer" target="_blank">http://llvm.org/viewvc/llvm-project/compiler-rt/trunk/test/sanitizer_common/TestCases/Linux/allow_user_segv.cc?rev=315777&r1=315776&r2=315777&view=diff</a><br>
>> >>>><br>
>> >>>><br>
>> >>>> ==============================================================================<br>
>> >>>> ---<br>
>> >>>><br>
>> >>>> compiler-rt/trunk/test/sanitizer_common/TestCases/Linux/allow_user_segv.cc<br>
>> >>>> (original)<br>
>> >>>> +++<br>
>> >>>><br>
>> >>>> compiler-rt/trunk/test/sanitizer_common/TestCases/Linux/allow_user_segv.cc<br>
>> >>>> Fri Oct 13 16:57:08 2017<br>
>> >>>> @@ -4,16 +4,34 @@<br>
>> >>>>  // clang-format off<br>
>> >>>>  // RUN: %clangxx -O0 %s -o %t<br>
>> >>>><br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=0 not %run %t 2>&1 | FileCheck %s<br>
>> >>>> --check-prefix=CHECK0 || \<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=0 not %run %t 2>&1 | FileCheck %s<br>
>> >>>> --check-prefix=CHECK0 || \<br>
>> >>>>  // RUN: %env_tool_opts=handle_segv=0 not %run %t 2>&1 | FileCheck %s<br>
>> >>>> --check-prefix=CHECK0<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=1 not %run %t 2>&1 | FileCheck %s<br>
>> >>>> --check-prefix=CHECK1 || \<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=1 not %run %t 2>&1 | FileCheck %s<br>
>> >>>> --check-prefix=CHECK1 || \<br>
>> >>>>  // RUN: %env_tool_opts=handle_segv=1 not %run %t 2>&1 | FileCheck %s<br>
>> >>>> --check-prefix=CHECK1<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=2 not %run %t 2>&1 | FileCheck %s<br>
>> >>>> --check-prefix=CHECK2 || \<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=2 not %run %t 2>&1 | FileCheck %s<br>
>> >>>> --check-prefix=CHECK2 || \<br>
>> >>>>  // RUN: %env_tool_opts=handle_segv=2 not %run %t 2>&1 | FileCheck %s<br>
>> >>>> --check-prefix=CHECK2<br>
>> >>>><br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=0:allow_user_segv_handler=0 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK0 || \<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=0:allow_user_segv_handler=0 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK0 || \<br>
>> >>>>  // RUN: %env_tool_opts=handle_segv=0:allow_user_segv_handler=0 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK0<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=1:allow_user_segv_handler=0 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK2 || \<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=1:allow_user_segv_handler=0 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK2 || \<br>
>> >>>>  // RUN: %env_tool_opts=handle_segv=1:allow_user_segv_handler=0 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK2<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=2:allow_user_segv_handler=0 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK2 || \<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=2:allow_user_segv_handler=0 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK2 || \<br>
>> >>>>  // RUN: %env_tool_opts=handle_segv=2:allow_user_segv_handler=0 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK2<br>
>> >>>><br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=0:allow_user_segv_handler=1 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK0 || \<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=0:allow_user_segv_handler=1 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK0 || \<br>
>> >>>>  // RUN: %env_tool_opts=handle_segv=0:allow_user_segv_handler=1 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK0<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=1:allow_user_segv_handler=1 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK1 || \<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=1:allow_user_segv_handler=1 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK1 || \<br>
>> >>>>  // RUN: %env_tool_opts=handle_segv=1:allow_user_segv_handler=1 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK1<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=2:allow_user_segv_handler=1 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK2 || \<br>
>> >>>> +// RUN: %env_tool_opts=handle_segv=2:allow_user_segv_handler=1 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK2 || \<br>
>> >>>>  // RUN: %env_tool_opts=handle_segv=2:allow_user_segv_handler=1 not<br>
>> >>>> %run<br>
>> >>>> %t 2>&1 | FileCheck %s --check-prefix=CHECK2<br>
>> >>>>  // clang-format on<br>
>> >>>><br>
>> >>>> @@ -21,9 +39,6 @@<br>
>> >>>>  // XFAIL: msan<br>
>> >>>>  // XFAIL: tsan<br>
>> >>>><br>
>> >>>> -// Flaky errors in debuggerd with "waitpid returned unexpected pid<br>
>> >>>> (0)"<br>
>> >>>> in logcat.<br>
>> >>>> -// UNSUPPORTED: android<br>
>> >>>> -<br>
>> >>>>  #include <signal.h><br>
>> >>>>  #include <stdio.h><br>
>> >>>>  #include <stdlib.h><br>
>> >>>><br>
>> >>>><br>
>> >>>> _______________________________________________<br>
>> >>>> llvm-commits mailing list<br>
>> >>>> <a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
>> >>>> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
>> >>><br>
>> >>><br>
>> >>> _______________________________________________<br>
>> >>> llvm-commits mailing list<br>
>> >>> <a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
>> >>> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
>> >>><br>
>> >><br>
>> >><br>
>> >> _______________________________________________<br>
>> >> llvm-commits mailing list<br>
>> >> <a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
>> >> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
>> >><br>
>> ><br>
>> ><br>
>> > _______________________________________________<br>
>> > llvm-commits mailing list<br>
>> > <a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
>> > <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
>> ><br>
>> _______________________________________________<br>
>> llvm-commits mailing list<br>
>> <a href="mailto:llvm-commits@lists.llvm.org" target="_blank">llvm-commits@lists.llvm.org</a><br>
>> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br>
</blockquote></div>