<div dir="ltr"><div class="gmail_extra"><br><div class="gmail_quote">On Thu, Feb 19, 2015 at 12:26 AM, Alexander Potapenko <span dir="ltr"><<a href="mailto:glider@google.com" target="_blank">glider@google.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Will it be possible to combine LSan and ASan suppressions in a single file?<br>
(I'm not quite sure we want this, though)<br></blockquote><div><br></div><div>We might add this functionality as needed (allow suppressions file for "parent tool" (ASan) contain entries for plugin tools (LSan, UBSan).</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">
The idea sounds good to me in general.<br></blockquote><div><br></div><div>OK, thanks.</div><div> </div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div class="HOEnZb"><div class="h5"><br>
On Thu, Feb 19, 2015 at 7:46 AM, Dmitry Vyukov <<a href="mailto:dvyukov@google.com">dvyukov@google.com</a>> wrote:<br>
> +glider<br>
> sounds good to me<br>
> but probably not super top priority<br>
><br>
><br>
> On Thu, Feb 19, 2015 at 3:02 AM, Alexey Samsonov <<a href="mailto:vonosmas@gmail.com">vonosmas@gmail.com</a>> wrote:<br>
>> Hi,<br>
>><br>
>> TL;DR Let's make each sanitizer has its own suppression context.<br>
>><br>
>> So now there are four  sanitizers that support suppressions: TSan, LSan,<br>
>> UBSan, ASan; and 12 types of suppressions (TSan has 7, LSan and UBSan has 1,<br>
>> ASan has 3, none are shared).<br>
>><br>
>> The only way to use suppressions is via SuppressionContext singleton from<br>
>> sanitizer_common library. I propose to make SuppressionContext a regular<br>
>> class and let each sanitizer use its own, specialized version of it.<br>
>> "suppressions" runtime flag will be removed from CommonFlags, and instead<br>
>> added to each of: TsanFlags, UbsanFlags, AsanFlags, LsanFlags.<br>
>><br>
>> This will allow us to:<br>
>> 1) specify different suppression files for each sanitizer, which is useful<br>
>> if they are combined<br>
>> $ ASAN_OPTIONS=suppressions=asan_supp.txt<br>
>> LSAN_OPTIONS=suppressions=lsan_supp.txt<br>
>><br>
>> 2) properly diagnose unsupported suppressions: e.g. if one will write<br>
>> thread:foo.cc<br>
>> and pass this suppression file to UBSan<br>
>><br>
>> 3) get rid of hardcoding all possible sanitizer-specific suppressions in<br>
>> sanitizer_common.<br>
>><br>
>> I'm fine with making this change, do you agree that we should do it? To me<br>
>> this seems like a no-brainer, but let me know if you think differently.<br>
>><br>
>> --<br>
>> Alexey Samsonov<br>
>> <a href="mailto:vonosmas@gmail.com">vonosmas@gmail.com</a><br>
<br>
<br>
<br>
</div></div><span class="HOEnZb"><font color="#888888">--<br>
Alexander Potapenko<br>
Software Engineer<br>
Google Moscow<br>
</font></span></blockquote></div><br><br clear="all"><div><br></div>-- <br><div class="gmail_signature"><div dir="ltr">Alexey Samsonov<br><a href="mailto:vonosmas@gmail.com" target="_blank">vonosmas@gmail.com</a></div></div>
</div></div>