Граф коммитов

42 Коммитов

Автор SHA1 Сообщение Дата
Christian Holler b8ee76ebd8 Bug 1373256 - Changes to support -fsanitize=integer in the codebase. r=froydnj
The -fsanitize=integer analysis from UBSan can be helpful to detect signed and unsigned integer overflows in the codebase. Unfortunately, those occur very frequently, making it impossible to test anything with it without the use of a huge blacklist. This patch includes a blacklist that is broad enough to silence everything that would drain performance too much. But even with this blacklist, neither tests nor fuzzing is "clean". We can however in the future combine this with static analysis to limit ourselves to interesting places to look at, or improve the dynamic analysis to omit typical benign overflows.

It also adds another attribute that can be used on functions. It is not used right now because it was initially easier to add things to the compile-time blacklist to get started.

Finally, it includes a runtime suppression list and patches various parts in the test harnesses to support that. It is currently empty and it should not be used on frequent overflows because it is expensive. However, it has the advantage that it can be used to differentiate between signed and unsigned overflows while the compile-time blacklist cannot do that. So it can be used to e.g. silence unsigned integer overflows on a file or function while still reporting signed issues. We can also use this suppression list for any other UBSan related suppressions, should we ever want to use other features from that sanitizer.

MozReview-Commit-ID: C5ofhfJdpCS

--HG--
extra : rebase_source : 952043a441b41b2f58ec4abc51ac15fa71fc142f
2017-04-09 12:59:26 +02:00
Carsten "Tomcat" Book d8e080c10c Backed out changeset 07e0c4e4ae85 (bug 1373256) for breaking android tests 2017-06-28 14:47:55 +02:00
Christian Holler 9924ab3046 Bug 1373256 - Changes to support -fsanitize=integer in the codebase. r=froydnj
The -fsanitize=integer analysis from UBSan can be helpful to detect signed and unsigned integer overflows in the codebase. Unfortunately, those occur very frequently, making it impossible to test anything with it without the use of a huge blacklist. This patch includes a blacklist that is broad enough to silence everything that would drain performance too much. But even with this blacklist, neither tests nor fuzzing is "clean". We can however in the future combine this with static analysis to limit ourselves to interesting places to look at, or improve the dynamic analysis to omit typical benign overflows.

It also adds another attribute that can be used on functions. It is not used right now because it was initially easier to add things to the compile-time blacklist to get started.

Finally, it includes a runtime suppression list and patches various parts in the test harnesses to support that. It is currently empty and it should not be used on frequent overflows because it is expensive. However, it has the advantage that it can be used to differentiate between signed and unsigned overflows while the compile-time blacklist cannot do that. So it can be used to e.g. silence unsigned integer overflows on a file or function while still reporting signed issues. We can also use this suppression list for any other UBSan related suppressions, should we ever want to use other features from that sanitizer.

MozReview-Commit-ID: C5ofhfJdpCS

--HG--
extra : rebase_source : 64aa804965d24bb90b103c00c692a2ac6859e408
2017-04-09 12:59:26 +02:00
Joel Maher ff97d2f03e Bug 1334461 - run mochitest-a11y on ubuntu 16.04 instead of 12.04. r=kats
MozReview-Commit-ID: 9nF6NgKrPDP
2017-01-27 12:28:28 -05:00
David Major a70b85d44a Bug 1317471: Add the sandbox's interceptors_64.cc to Windows ASan blacklist. r=froydnj DONTBUILD
For the same reason as bug 1200740#c0: this code runs before ASan initializes shadow memory.

MozReview-Commit-ID: 9fIB6tyfSEl
2016-11-14 16:43:51 -06:00
Ting-Yu Chou f069d5cee1 Bug 1200740 - Import blacklist for ASan on Windows to avoid instrumenting selected sandbox functions and files. r=glandium
MozReview-Commit-ID: DJJuD0dyyKz

--HG--
extra : rebase_source : 803a3136f1ff163fe3237a0ac157bffa1eef0873
2016-11-10 09:18:55 +08:00
Ryan VanderMeulen b32395334d Bug 1311584 - Remove some LSAN suppressions that are no longer needed. r=mccr8 2016-10-19 22:47:01 -04:00
Valentin Gosu fe9b24270d Bug 1301069 - Backed out bug 1185120 (changeset 38cad72a77a6) a=backout a=merge
--HG--
extra : source : 9330dc01ec0245f05311c56025a50705138351bc
2016-09-08 00:04:07 +02:00
Yen Chi Hsuan 5a098d36c7 Bug 1185120 - Convert raw pointers in DNS.cpp and nsHostResolver.cpp to smart pointers. r=valentin 2016-09-05 03:47:58 +08:00
Kearwood (Kip) Gilbert 9b588f7bc7 Bug 1111689 - Suppress ASAN leak reports for libglsl.so. - r=jgilbert 2016-06-08 17:28:49 -07:00
Andrew McCreight d32f8a4e5c Bug 1227347, part 1 - Remove IPC-related LSan suppressions. r=erahm
It seems like these were fixed by making graphics IPC shut down
properly.
2016-04-26 11:46:28 -07:00
Andrew McCreight bd211c811c Bug 1250995 - Consolidate some NSPR fd-related leak suppressions. r=erahm 2016-02-24 14:19:00 +01:00
Jeff Muizelaar 5093f222e3 Bug 1248290. Add an lsan supression for libdricore9.2.1.so.
Mesa 9.2.1 looks to be leaking debug messages and I can't figure out how
to make it stop. The upstream code has been entirely rewritten so it's
probably not worth investigating further.
2016-02-14 17:39:22 -05:00
Valentin Gosu 0779b66d18 Bug 1228640 - Backout bug 1183781 (changeset b9b6a1567ef6) for causing crash a=me 2015-11-28 00:20:01 +01:00
Valentin Gosu 8a5616fdc5 Bug 1183781 - Small leak in DNS.cpp and nsHostResolver.cpp r=sworkman
* makes AddrInfo extend nsISupports
* uses RefPtr for managing AddrInfo and nsHostResolver in nsHostResolver.cpp
2015-11-23 13:02:41 +01:00
Mike Hommey f8b450ee34 Bug 1186748 - Make ASAN builds happy with Gtk+3. r=mccr8,r=bholley
- Add a suppression for a leak LSAN detects in system libpixman.
- Skip an intermittently failing test.
2015-11-04 11:21:49 +09:00
Andrew McCreight 8a9c5fbb0a Bug 1212987 - Remove IPC::Channel LSan suppressions. r=billm
Note that we are still leaking some of these, likely due to
CompositorChild and ImageBridgeChild leaking, but they are not
detected by LSan because they are reachable from the stack.
2015-10-14 11:03:47 -07:00
Andrew McCreight ed4e680f0d Bug 1201096 - Remove various obsolete LSan suppressions. r=erahm 2015-09-02 13:18:00 +02:00
Andrew McCreight e0b02240a7 Bug 1074317 - Report indirect LSan leaks in mochitests. r=erahm
LeanSanitizer reports two kinds of leaks: direct and indirect. A
leaked block that is pointed to by another leaked block is an
"indirect leak", while one that isn't is a "direct leak". Often,
indirect leaks are just things entrained by the "real" leak, but if
two leaked blocks are in a cycle, then they both end up being
indirect, so we need to report them, too.

This patch makes it so that indirect LSan leaks are treated the same
as direct leaks by Mochitests, which means they will turn the tree
orange. There are a few existing indirect leaks of various severity,
so I had add some suppressions. See those bugs for more details.

--HG--
extra : rebase_source : 0269666f546b6e349bebf216771fc6dfa4d9487a
2015-08-03 06:45:00 -04:00
Andrew McCreight ef6d1e9493 Bug 1089816 - Let ASan content processes run to completion. r=billm
There are a variety of ways that the parent and child process ensure that
the child process exits quickly in opt builds, but for AddressSanitizer
builds we want to let the child process to run to completion, so that we
can get a LeakSanitizer report.

This requires adding some addition LSan suppressions, because running
LSan in child processes detects some new leaks.
2015-07-27 12:49:48 -07:00
Andrew McCreight 8781b7b74c Bug 1129226 - Update LSan suppression for fixPlainObjectGroup. rs=ryanvm
CLOSED TREE
2015-02-06 10:02:44 -08:00
Andrew McCreight e59559ca29 Bug 1125930 - Rename LSan suppression. r=bhackett 2015-02-02 12:08:42 -08:00
Tom Tromey 941025cb98 Bug 1047124 - Clean up memory leaks. r=BenWa 2014-12-11 09:41:00 -05:00
David Rajchenbach-Teller 150445534a Bug 1044020 - Add libdl.so to lsan_suppressions.txt. r=froydnj 2014-11-02 18:35:23 +01:00
David Rajchenbach-Teller 41848ac6fa Bug 1044020 - Add duration of shutdown phases to Telemetry. r=froydnj 2014-11-10 13:58:14 +01:00
Byron Campen [:bwc] 818143295b Bug 1055852 - Part 2: Remove the suppressions for these leaks. r=mccr8 2014-08-29 09:35:35 -04:00
Andrew McCreight 4a2a52083e Bug 1057804 - Add additional LSan suppression for nrappkit initialization to deal with shallower stack frames on 34 Aurora. r=bwc
DONTBUILD
2014-08-28 11:29:27 -07:00
Andrew McCreight de170cc3f2 Back out 77385b914d3b for using the wrong bug number. 2014-08-28 12:57:59 -07:00
Andrew McCreight 92f3347223 Bug 1057084 - Add additional LSan suppression for nrappkit initialization to deal with shallower stack frames on 34 Aurora. r=bwc 2014-08-28 12:53:47 -07:00
Andrew McCreight 5e8ae2d9fc Bug 1055154 - Add more intermittent WebRTC leaks to suppression list.
DONTBUILD
2014-08-22 13:43:11 -07:00
Andrew McCreight 47afc20df7 Bug 1055154 - Suppress more WebRTC intermittent leaks exposed by earlier suppression removals. r=nobody 2014-08-20 12:46:11 -07:00
Andrew McCreight a5251b1c4b Bug 1055154 - Add additional suppressions for an intermittent WebRTC leak. r=jesup CLOSED TREE 2014-08-20 10:18:09 -07:00
Andrew McCreight 9899d2a5d7 Bug 1055154 - Add finer-grained LSan suppressions for WebRTC leaks. r=njn DONTBUILD 2014-08-19 16:46:01 -07:00
Andrew McCreight 57a41c12a7 Bug 1023585 - Remove suppression for AllocateArrayBufferContents now that the leak is fixed. r=khuey 2014-08-15 14:00:53 -07:00
Andrew McCreight 4c1cb551f3 Bug 1022954 - ScriptSource leaks sourceMapURL_ sometimes. r=jimb 2014-07-10 15:46:00 +02:00
Andrew McCreight 885ecec6f5 Bug 1021932 - Remove the comments about two array buffer leaks that are no longer present. DONTBUILD r=erahm 2014-07-01 14:40:24 -07:00
Jim Blandy e07aaa8185 Bug 800200: Remove references to JSD from outside js/jsd. r=mccr8,bholley,ted,smaug 2014-06-27 11:05:08 -07:00
Andrew McCreight c8a84e4eda Bug 1022042 - Remove LSAN suppression for compareVariants in test plugin. r=gfritzsche 2014-06-23 13:44:43 -07:00
Andrew McCreight b0e16da775 Bug 988041 - Add suppression for intermittent XML parser leak. r=khuey DONTBUILD 2014-06-23 15:56:21 -07:00
Andrew McCreight d4624fdbee Bug 988041 - Add another LSan suppression for file descriptor stuff. r=CLOSED TREE 2014-06-20 16:31:58 -07:00
Andrew McCreight a7fbd0d3c2 Bug 988041 - Enable LeakSanitizer for Mochitests. r=jmaher 2014-06-20 09:08:30 -07:00
Christian Holler 6e47a54a26 Bug 940299 - Add a runtime suppression list for ThreadSanitizer. r=glandium DONTBUILD
--HG--
extra : rebase_source : f418ea0e76a552beae72536c36f17ac9c3b7ffdc
2013-11-21 17:35:59 +01:00