<div dir="ltr">Yep, linux bot fails as well:<div><br></div><div><a href="http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux/builds/25307/steps/check-tsan%20in%20gcc%20build/logs/stdio">http://lab.llvm.org:8011/builders/sanitizer-x86_64-linux/builds/25307/steps/check-tsan%20in%20gcc%20build/logs/stdio</a><br><br><div class="gmail_quote"><div dir="ltr">On Thu, Sep 8, 2016 at 10:54 AM Evgenii Stepanov via llvm-commits <<a href="mailto:llvm-commits@lists.llvm.org">llvm-commits@lists.llvm.org</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I see this gotsan error on the bot, too. Looking.<br class="gmail_msg">
Filipe, I did not get any notification for the osx bots, and the<br class="gmail_msg">
current failure looks unrelated. Could you explain why this test<br class="gmail_msg">
should not pass?<br class="gmail_msg">
<br class="gmail_msg">
On Thu, Sep 8, 2016 at 6:43 AM, Filipe Cabecinhas <<a href="mailto:filcab@gmail.com" class="gmail_msg cremed" target="_blank">filcab@gmail.com</a>> wrote:<br class="gmail_msg">
> Hi Evgeniy,<br class="gmail_msg">
><br class="gmail_msg">
> Did you get this test passing on OS X? AFAICT, OS X will always abort<br class="gmail_msg">
> the test before ASan can print that line.<br class="gmail_msg">
> There *might* be a configuration difference, but if there is, it is<br class="gmail_msg">
> non-obvious and should be documented somewhere visible (possibly on<br class="gmail_msg">
> the test too).<br class="gmail_msg">
><br class="gmail_msg">
> Thank you,<br class="gmail_msg">
><br class="gmail_msg">
>   Filipe<br class="gmail_msg">
><br class="gmail_msg">
><br class="gmail_msg">
> On Thu, Sep 8, 2016 at 2:46 AM, Yung, Douglas via llvm-commits<br class="gmail_msg">
> <<a href="mailto:llvm-commits@lists.llvm.org" class="gmail_msg cremed" target="_blank">llvm-commits@lists.llvm.org</a>> wrote:<br class="gmail_msg">
>> Hi Evgeniy,<br class="gmail_msg">
>><br class="gmail_msg">
>> This change you made seems to be causing a problem with our internal build bot. I'm seeing the following errors when trying to build your change:<br class="gmail_msg">
>><br class="gmail_msg">
>> [74/399] Generating gtest-all.cc.x86_64.o<br class="gmail_msg">
>> FAILED: cd /home/siadmin/jenkins/w/opensource/opensource_build/llvm/projects/compiler-rt/lib/tsan/go && env "CC=/usr/bin/cc " IN_TMPDIR=1 SILENT=1 /home/siadmin/jenkins/w/opensource/opensource_build/llvm/projects/compiler-rt/lib/tsan/go/buildgo.sh<br class="gmail_msg">
>> /tmp/gotsan.5u5SyTl4ZX/gotsan.cc: In function 'void __sanitizer::Abort()':<br class="gmail_msg">
>> /tmp/gotsan.5u5SyTl4ZX/gotsan.cc:10286:12: error: 'struct sigaction' has no member named 'sa_sigaction'<br class="gmail_msg">
>>      sigact.sa_sigaction = (sa_sigaction_t)SIG_DFL;<br class="gmail_msg">
>>             ^<br class="gmail_msg">
>> At global scope:<br class="gmail_msg">
>> cc1plus: error: unrecognized command line option "-Wno-unknown-warning-option" [-Werror]<br class="gmail_msg">
>> cc1plus: error: unrecognized command line option "-Wno-unused-const-variable" [-Werror]<br class="gmail_msg">
>> cc1plus: all warnings being treated as errors<br class="gmail_msg">
>> ninja: build stopped: subcommand failed.<br class="gmail_msg">
>><br class="gmail_msg">
>><br class="gmail_msg">
>> I'm not sure though where the "unrecognized command line option" errors are coming from though. Can you look into the sigaction error that your change introduced?<br class="gmail_msg">
>><br class="gmail_msg">
>> Douglas Yung<br class="gmail_msg">
>><br class="gmail_msg">
>>> -----Original Message-----<br class="gmail_msg">
>>> From: llvm-commits [mailto:<a href="mailto:llvm-commits-bounces@lists.llvm.org" class="gmail_msg cremed" target="_blank">llvm-commits-bounces@lists.llvm.org</a>] On<br class="gmail_msg">
>>> Behalf Of Evgeniy Stepanov via llvm-commits<br class="gmail_msg">
>>> Sent: Wednesday, September 07, 2016 16:41<br class="gmail_msg">
>>> To: <a href="mailto:llvm-commits@lists.llvm.org" class="gmail_msg cremed" target="_blank">llvm-commits@lists.llvm.org</a><br class="gmail_msg">
>>> Subject: [compiler-rt] r280885 - [sanitizer] Fix a conflict between<br class="gmail_msg">
>>> abort_on_error and handle_abort.<br class="gmail_msg">
>>><br class="gmail_msg">
>>> Author: eugenis<br class="gmail_msg">
>>> Date: Wed Sep  7 18:40:53 2016<br class="gmail_msg">
>>> New Revision: 280885<br class="gmail_msg">
>>><br class="gmail_msg">
>>> URL: <a href="http://llvm.org/viewvc/llvm-project?rev=280885&view=rev" rel="noreferrer" class="gmail_msg cremed" target="_blank">http://llvm.org/viewvc/llvm-project?rev=280885&view=rev</a><br class="gmail_msg">
>>> Log:<br class="gmail_msg">
>>> [sanitizer] Fix a conflict between abort_on_error and handle_abort.<br class="gmail_msg">
>>><br class="gmail_msg">
>>> Reset the SIGABRT signal handler before calling abort().<br class="gmail_msg">
>>><br class="gmail_msg">
>>> Also, change the error message when catching SIGABRT to say "ABRT"<br class="gmail_msg">
>>> instead of "SEGV".<br class="gmail_msg">
>>><br class="gmail_msg">
>>> Added:<br class="gmail_msg">
>>>     compiler-<br class="gmail_msg">
>>> rt/trunk/test/asan/TestCases/Posix/handle_abort_on_error.cc<br class="gmail_msg">
>>> Modified:<br class="gmail_msg">
>>>     compiler-rt/trunk/lib/asan/asan_posix.cc<br class="gmail_msg">
>>>     compiler-rt/trunk/lib/sanitizer_common/sanitizer_posix_libcdep.cc<br class="gmail_msg">
>>><br class="gmail_msg">
>>> Modified: compiler-rt/trunk/lib/asan/asan_posix.cc<br class="gmail_msg">
>>> URL: <a href="http://llvm.org/viewvc/llvm-project/compiler-" rel="noreferrer" class="gmail_msg cremed" target="_blank">http://llvm.org/viewvc/llvm-project/compiler-</a><br class="gmail_msg">
>>> rt/trunk/lib/asan/asan_posix.cc?rev=280885&r1=280884&r2=280885&view=dif<br class="gmail_msg">
>>> f<br class="gmail_msg">
>>> =======================================================================<br class="gmail_msg">
>>> =======<br class="gmail_msg">
>>> --- compiler-rt/trunk/lib/asan/asan_posix.cc (original)<br class="gmail_msg">
>>> +++ compiler-rt/trunk/lib/asan/asan_posix.cc Wed Sep  7 18:40:53 2016<br class="gmail_msg">
>>> @@ -88,6 +88,8 @@ void AsanOnDeadlySignal(int signo, void<br class="gmail_msg">
>>>      ReportDeadlySignal("FPE", sig);<br class="gmail_msg">
>>>    else if (signo == SIGILL)<br class="gmail_msg">
>>>      ReportDeadlySignal("ILL", sig);<br class="gmail_msg">
>>> +  else if (signo == SIGABRT)<br class="gmail_msg">
>>> +    ReportDeadlySignal("ABRT", sig);<br class="gmail_msg">
>>>    else<br class="gmail_msg">
>>>      ReportDeadlySignal("SEGV", sig);<br class="gmail_msg">
>>>  }<br class="gmail_msg">
>>><br class="gmail_msg">
>>> Modified: compiler-<br class="gmail_msg">
>>> rt/trunk/lib/sanitizer_common/sanitizer_posix_libcdep.cc<br class="gmail_msg">
>>> URL: <a href="http://llvm.org/viewvc/llvm-project/compiler-" rel="noreferrer" class="gmail_msg cremed" target="_blank">http://llvm.org/viewvc/llvm-project/compiler-</a><br class="gmail_msg">
>>> rt/trunk/lib/sanitizer_common/sanitizer_posix_libcdep.cc?rev=280885&r1=<br class="gmail_msg">
>>> 280884&r2=280885&view=diff<br class="gmail_msg">
>>> =======================================================================<br class="gmail_msg">
>>> =======<br class="gmail_msg">
>>> --- compiler-rt/trunk/lib/sanitizer_common/sanitizer_posix_libcdep.cc<br class="gmail_msg">
>>> (original)<br class="gmail_msg">
>>> +++ compiler-rt/trunk/lib/sanitizer_common/sanitizer_posix_libcdep.cc<br class="gmail_msg">
>>> +++ Wed Sep  7 18:40:53 2016<br class="gmail_msg">
>>> @@ -44,6 +44,8 @@<br class="gmail_msg">
>>>  #define MAP_NORESERVE 0<br class="gmail_msg">
>>>  #endif<br class="gmail_msg">
>>><br class="gmail_msg">
>>> +typedef void (*sa_sigaction_t)(int, siginfo_t *, void *);<br class="gmail_msg">
>>> +<br class="gmail_msg">
>>>  namespace __sanitizer {<br class="gmail_msg">
>>><br class="gmail_msg">
>>>  u32 GetUid() {<br class="gmail_msg">
>>> @@ -126,6 +128,14 @@ void SleepForMillis(int millis) {  }<br class="gmail_msg">
>>><br class="gmail_msg">
>>>  void Abort() {<br class="gmail_msg">
>>> +  // If we are handling SIGABRT, unhandle it first.<br class="gmail_msg">
>>> +  if (IsHandledDeadlySignal(SIGABRT)) {<br class="gmail_msg">
>>> +    struct sigaction sigact;<br class="gmail_msg">
>>> +    internal_memset(&sigact, 0, sizeof(sigact));<br class="gmail_msg">
>>> +    sigact.sa_sigaction = (sa_sigaction_t)SIG_DFL;<br class="gmail_msg">
>>> +    internal_sigaction(SIGABRT, &sigact, nullptr);  }<br class="gmail_msg">
>>> +<br class="gmail_msg">
>>>    abort();<br class="gmail_msg">
>>>  }<br class="gmail_msg">
>>><br class="gmail_msg">
>>> @@ -170,7 +180,6 @@ void UnsetAlternateSignalStack() {<br class="gmail_msg">
>>>    UnmapOrDie(oldstack.ss_sp, oldstack.ss_size);  }<br class="gmail_msg">
>>><br class="gmail_msg">
>>> -typedef void (*sa_sigaction_t)(int, siginfo_t *, void *);  static void<br class="gmail_msg">
>>> MaybeInstallSigaction(int signum,<br class="gmail_msg">
>>>                                    SignalHandlerType handler) {<br class="gmail_msg">
>>>    if (!IsHandledDeadlySignal(signum))<br class="gmail_msg">
>>><br class="gmail_msg">
>>> Added: compiler-<br class="gmail_msg">
>>> rt/trunk/test/asan/TestCases/Posix/handle_abort_on_error.cc<br class="gmail_msg">
>>> URL: <a href="http://llvm.org/viewvc/llvm-project/compiler-" rel="noreferrer" class="gmail_msg cremed" target="_blank">http://llvm.org/viewvc/llvm-project/compiler-</a><br class="gmail_msg">
>>> rt/trunk/test/asan/TestCases/Posix/handle_abort_on_error.cc?rev=280885&<br class="gmail_msg">
>>> view=auto<br class="gmail_msg">
>>> =======================================================================<br class="gmail_msg">
>>> =======<br class="gmail_msg">
>>> --- compiler-<br class="gmail_msg">
>>> rt/trunk/test/asan/TestCases/Posix/handle_abort_on_error.cc (added)<br class="gmail_msg">
>>> +++ compiler-<br class="gmail_msg">
>>> rt/trunk/test/asan/TestCases/Posix/handle_abort_on_error.cc<br class="gmail_msg">
>>> +++ Wed Sep  7 18:40:53 2016<br class="gmail_msg">
>>> @@ -0,0 +1,9 @@<br class="gmail_msg">
>>> +// Regression test: this used to abort() in SIGABRT handler in an<br class="gmail_msg">
>>> infinite loop.<br class="gmail_msg">
>>> +// RUN: %clangxx_asan -O0 %s -o %t &&<br class="gmail_msg">
>>> +%env_asan_opts=handle_abort=1,abort_on_error=1 not --crash %run %t<br class="gmail_msg">
>>> 2>&1<br class="gmail_msg">
>>> +| FileCheck %s<br class="gmail_msg">
>>> +<br class="gmail_msg">
>>> +#include <stdlib.h><br class="gmail_msg">
>>> +<br class="gmail_msg">
>>> +int main() {<br class="gmail_msg">
>>> +  abort();<br class="gmail_msg">
>>> +  // CHECK: ERROR: AddressSanitizer: ABRT }<br class="gmail_msg">
>>><br class="gmail_msg">
>>><br class="gmail_msg">
>>> _______________________________________________<br class="gmail_msg">
>>> llvm-commits mailing list<br class="gmail_msg">
>>> <a href="mailto:llvm-commits@lists.llvm.org" class="gmail_msg cremed" target="_blank">llvm-commits@lists.llvm.org</a><br class="gmail_msg">
>>> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" class="gmail_msg cremed" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br class="gmail_msg">
>> _______________________________________________<br class="gmail_msg">
>> llvm-commits mailing list<br class="gmail_msg">
>> <a href="mailto:llvm-commits@lists.llvm.org" class="gmail_msg cremed" target="_blank">llvm-commits@lists.llvm.org</a><br class="gmail_msg">
>> <a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" class="gmail_msg cremed" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br class="gmail_msg">
_______________________________________________<br class="gmail_msg">
llvm-commits mailing list<br class="gmail_msg">
<a href="mailto:llvm-commits@lists.llvm.org" class="gmail_msg cremed" target="_blank">llvm-commits@lists.llvm.org</a><br class="gmail_msg">
<a href="http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits" rel="noreferrer" class="gmail_msg cremed" target="_blank">http://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-commits</a><br class="gmail_msg">
</blockquote></div></div></div><div dir="ltr">-- <br></div><div data-smartmail="gmail_signature"><div dir="ltr">Mike<br>Sent from phone</div></div>