<div dir="ltr">LGTM<br><div class="gmail_extra"><br><br><div class="gmail_quote">On Wed, Oct 23, 2013 at 9:25 AM, Nick Lewycky <span dir="ltr"><<a href="mailto:nlewycky@google.com" target="_blank">nlewycky@google.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="im">On 22 October 2013 22:10, Kostya Serebryany <span dir="ltr"><<a href="mailto:kcc@google.com" target="_blank">kcc@google.com</a>></span> wrote:<br>
</div><div class="gmail_extra"><div class="gmail_quote"><div class="im"><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">



<div dir="ltr"><br><div class="gmail_extra"><div class="gmail_quote"><div>On Wed, Oct 23, 2013 at 8:16 AM, Nick Lewycky <span dir="ltr"><<a href="mailto:nlewycky@google.com" target="_blank">nlewycky@google.com</a>></span> wrote:<br>




<blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">__sanitizer_report_error_summary is the replaceable interface for reporting an error. This patch changes asan a tiny bit to always emit a summary whenever it encounters an error. This is important, otherwise a library user of asan will not be aware of errors that were merely printed.<div>






<br></div><div>Also, all these summaries are redundant with the non-summarized printouts. Make the default weak implementation of report error summary not do anything. This means we need to remove the check for SUMMARY lines from the tests. This is suboptimal for testing, but printing out these redundant lines is just bad UI.</div>




</div></blockquote><div><br></div></div><div>But I've added summaries for a reason: they help to cluster bug reports.</div></div></div></div></blockquote><div><br></div></div><div>But asan prints one error and exits?</div>
</div></div></div></blockquote><div><br></div><div>Correct. Summaries help cluster reports from different runs. </div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div class="im">


<div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr"><div class="gmail_extra"><div class="gmail_quote">


<div>I'd really prefer to keep them by default. </div>
</div></div></div></blockquote><div><br></div></div><div>I've attached an updated patch that puts the summaries back. What's left in the patch will fix a bug where a subprocess may catch an asan error and die, but that error would be lost by the parent process.</div>
</div></div></div></blockquote><div><br></div><div>This happens only if the subprocess does not have a symbolizer, right? </div><div><br></div><div>This patch will make asan print summaries with abrakadabra if there is not symbolizer. </div>
<div>Could be totally fine though.</div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex"><div dir="ltr">
<div class="gmail_extra"><div class="gmail_quote"><div> The only way to make sure we catch errors in all subprocesses is to make sure they call into sanitizer_report_error_summary if there's any error.</div>

<div><br></div><div>And we need ubsan to do this for the same reason. UBSan already has one-line errors. We want to print those, preferably without "SUMMARY:" before them.</div></div></div></div></blockquote><div>
<br></div><div>[in another patch?] we can move printing SUMMARY: from __sanitizer_report_error_summary to ReportErrorSummary</div><div>and add an additional "const char *prefix" parameter to ReportErrorSummary. asan/tsan/msan will call it with prefix="SUMMARY: "</div>
<div><br></div><div>btw, why not use phabricator for reviews :) ? </div><div> </div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left-width:1px;border-left-color:rgb(204,204,204);border-left-style:solid;padding-left:1ex">
<div dir="ltr"><div class="gmail_extra"><div class="gmail_quote"><div><br></div><div>Any ideas?</div><span class=""><font color="#888888">

<div><br></div><div>Nick</div></font></span></div></div></div>
</blockquote></div><br></div></div>