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

1713 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey 53ece1ccc1 Bug 1834337 - Ignore -Winline-new-delete warnings. r=sergesanspaille
Differential Revision: https://phabricator.services.mozilla.com/D178994
2023-05-29 20:24:44 +00:00
Mike Hommey 3b332113e3 Bug 1802675 - Don't build winheap.cpp when mozglue is a static library. r=firefox-build-system-reviewers,andi
Differential Revision: https://phabricator.services.mozilla.com/D163383
2023-05-23 03:01:22 +00:00
Mike Hommey 025602a787 Bug 1832708 - Disable std::__throw_* wrapping on libc++ >= 14.0. r=firefox-build-system-reviewers,andi
As of libc++ 14, the functions are defined in the std namespace rather
than std::<something>, which makes them conflict with our wrapping. This
is not a problem on libstdc++ because the functions are defined in the
library itself rather than the headers.

This was the real reason behind the addition of #ifndef __wasm__ ; this
is a more generic fix for the same problem.

Differential Revision: https://phabricator.services.mozilla.com/D177841
2023-05-15 21:10:55 +00:00
Mark Banner c2dd8e3266 Bug 1829618 - Enable Prettier on json files (automatic fixes). r=perftest-reviewers,webcompat-reviewers,extension-reviewers,andi,desktop-theme-reviewers,pip-reviewers,devtools-reviewers,sync-reviewers,mossop,denschub,dao,sparky,robwu,geckoview-reviewers,owlish
Differential Revision: https://phabricator.services.mozilla.com/D176336
2023-05-09 16:14:51 +00:00
Mike Hommey e120474d55 Bug 1829050 - Enable STL wrapping (and thus infallible new) for wasm-sandboxed code. r=firefox-build-system-reviewers,shravanrn,andi
Differential Revision: https://phabricator.services.mozilla.com/D175981
2023-05-08 21:10:19 +00:00
Paul Bone 73ec90e1fe Bug 1828599 - Assert if mprotect/VirtualFree fails r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D175834
2023-05-04 06:46:25 +00:00
Paul Bone 60b99c8afd Bug 1828599 - Fix control flow in MaybePageAlloc r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D175833
2023-05-04 06:46:24 +00:00
Noemi Erli b021722dbf Backed out changeset e06349a5b0f2 (bug 1829050) for causing build bustages in rlbox_wasm2c_sandbox.hpp 2023-05-03 08:16:13 +03:00
Mike Hommey d9b2a96f8d Bug 1829050 - Enable STL wrapping (and thus infallible new) for wasm-sandboxed code. r=firefox-build-system-reviewers,shravanrn,andi
Differential Revision: https://phabricator.services.mozilla.com/D175981
2023-05-03 04:05:07 +00:00
Norisz Fay 7aa97db372 Backed out changeset cddc0b331d97 (bug 1829050) for causing bustages on CheckedInt.h CLOSED TREE 2023-05-03 04:31:34 +03:00
Mike Hommey da624910fc Bug 1829050 - Enable STL wrapping (and thus infallible new) for wasm-sandboxed code. r=firefox-build-system-reviewers,shravanrn,andi
Differential Revision: https://phabricator.services.mozilla.com/D175981
2023-05-03 00:56:33 +00:00
Paul Bone 53172d841f Bug 1828638 - Don't track PHC hits/misses unless logging is enabled r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D175991
2023-04-21 06:40:39 +00:00
Paul Bone 74078e545a Bug 1828638 - Log the number of freed cells in PHC r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D175832
2023-04-21 06:40:39 +00:00
Andrew McCreight 3b2f73dd78 Bug 1828994 - Fix blank line printing in block_analyzer.py. r=pbone
Differential Revision: https://phabricator.services.mozilla.com/D175946
2023-04-19 23:31:33 +00:00
Paul Bone fda362dd17 Bug 1826298 - Fix a use of an `auto` type without a reference r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D174612
2023-04-05 07:51:36 +00:00
Paul Bone d7dcc61559 Bug 1800010 - Log lifetimes in PHC r=glandium
This patch was originally by Randell Jesup

Differential Revision: https://phabricator.services.mozilla.com/D170840
2023-04-05 07:49:58 +00:00
Paul Bone 11be120f95 Bug 1800010 - Make PHC more aggressive r=glandium
Improve the chance that we catch memory errors with PHC by:

 * Increasing the number of PHC slots (increased from 64 to 4096 in most
   cases).
 * Lower the delay for the first PHC allocation, with more slots we can
   afford to trap allocations from earlier in Firefox's startup.

These improve the chance PHC has of catching an error by 64x, at the cost of
additional 1MB of allocation metadata (on 4KB page size systems).  It
shouldn't impact performance more than having PHC on at all.

This patch was originally developed by Randell Jesup.

Differential Revision: https://phabricator.services.mozilla.com/D161934
2023-04-05 07:49:57 +00:00
serge-sans-paille 74b730e12a Bug 1825329 - Make memory/moz*alloc buildable outside of a unified build environment r=andi
Depends on D173972

Differential Revision: https://phabricator.services.mozilla.com/D173973
2023-03-31 13:29:45 +00:00
Cristian Tuns 8e06a7a853 Backed out 12 changesets (bug 1825325, bug 1825336, bug 1825333, bug 1825332, bug 1825324, bug 1824557, bug 1825328, bug 1825335, bug 1825330, bug 1825329, bug 1825327, bug 1825331) for causing build bustages in nsClipboard.cpp CLOSED TREE
Backed out changeset 9de3ed24d3a0 (bug 1825336)
Backed out changeset aef787728f19 (bug 1825335)
Backed out changeset a04c341244c1 (bug 1825333)
Backed out changeset e3ad15f762ba (bug 1825332)
Backed out changeset eed23da92a27 (bug 1825331)
Backed out changeset 8213bb54376e (bug 1825330)
Backed out changeset 747ec5ac4994 (bug 1825329)
Backed out changeset e91ff431f92d (bug 1825328)
Backed out changeset 59c18d13768b (bug 1825327)
Backed out changeset 538096d99e49 (bug 1825325)
Backed out changeset c76eb9d9b095 (bug 1825324)
Backed out changeset 8b81410eb686 (bug 1824557)
2023-03-31 12:58:53 -04:00
serge-sans-paille b7d27be3bf Bug 1825329 - Make memory/moz*alloc buildable outside of a unified build environment r=andi
Depends on D173972

Differential Revision: https://phabricator.services.mozilla.com/D173973
2023-03-31 13:29:45 +00:00
Paul Bone dcda564f85 Bug 1822451 - Add about:memory entries for PHC r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D173099

Depends on D173098
2023-03-29 11:08:17 +00:00
Paul Bone 845ba685dd Bug 1822451 - Update a function name in a comment r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D173098

Depends on D172655
2023-03-29 11:08:16 +00:00
Paul Bone 039c4531eb Bug 1822451 - Don't include PHC guard pages in explicit memory r=decoder
Differential Revision: https://phabricator.services.mozilla.com/D172655
2023-03-29 11:08:16 +00:00
Cosmin Sabou f894363c34 Backed out 3 changesets (bug 1822451) for busting thunderbird builds and causing bug 1825467. CLOSED TREE
Backed out changeset 5c399ec3dae0 (bug 1822451)
Backed out changeset ac5d1057c562 (bug 1822451)
Backed out changeset 42250977529b (bug 1822451)
2023-03-30 14:30:22 +03:00
Paul Bone a08a5cccf3 Bug 1822451 - Add about:memory entries for PHC r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D173099
2023-03-29 11:08:17 +00:00
Paul Bone 46b807b395 Bug 1822451 - Update a function name in a comment r=glandium
Depends on D172655

Differential Revision: https://phabricator.services.mozilla.com/D173098
2023-03-29 11:08:16 +00:00
Paul Bone cd6b755d18 Bug 1822451 - Don't include PHC guard pages in explicit memory r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D172655
2023-03-29 11:08:16 +00:00
Paul Bone ce59278f10 Bug 1609478 - Poison memory we want to free before we take the arena lock r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D166776
2023-03-16 06:05:27 +00:00
serge-sans-paille 70867be225 Bug 1820577 - Make memory/build buildable outside of a unified build environment r=andi
Differential Revision: https://phabricator.services.mozilla.com/D171735
2023-03-15 07:30:38 +00:00
Brad Werth 706117a7d7 Bug 1792146: Make replace_malloc_usable_size succeed with pointers within allocation pages. r=glandium
This changes replace_malloc_usable_size to allow measuring the size of
ptrs that appear anywhere within an allocation page, not just ptrs to the
start of the allocation pages.

This also modifies a gtest to explicitly check the usable size of some
modified pointers, not just the usable size of the pages where those
pointers are located.

Differential Revision: https://phabricator.services.mozilla.com/D170963
2023-03-09 23:12:20 +00:00
Olli Pettay cc96e06ed2 Bug 1817640 - extract calculation of max dirty value to a helper method EffectiveMaxDirty(), r=pbone
Differential Revision: https://phabricator.services.mozilla.com/D170290
2023-03-02 09:15:59 +00:00
Olli Pettay c1c5ec3417 Bug 1815069 - Make it possible to tweak mozjemalloc's max dirty page sizes dynamically, r=glandium,pbone
Differential Revision: https://phabricator.services.mozilla.com/D168900
2023-03-02 09:15:57 +00:00
Nazım Can Altınova c896734446 Bug 1779257 - Fix the stack walking for linux markers by calling getcontext in a valid stack frame r=mstange
See my comment on here for more context of my investigation:
https://bugzilla.mozilla.org/show_bug.cgi?id=1779257#c9

The saved context is invalid once the function that called `getcontext`
returns. We need to call the `getcontext` while the frame where we called it is
still on the stack. That's why this patch is moving the call to `getcontext` to
parent function by inlining the SyncPopulate content by using a macro instead.
This has to be a macro instead of a function because stack pointer address will
be invalid once the `Registers::SyncPopulate` returns. I tried to change this
method to inline but that didn't help either.

Differential Revision: https://phabricator.services.mozilla.com/D170133
2023-02-22 19:57:08 +00:00
Paul Bone f072e9a5ee Bug 1814808 - Move chunk releasing out of the arena lock's critical section r=glandium
The system calls of releasing a chunk of memory can be costly and should be
done outside the arena lock's critical section so that other threads aren't
blocked waiting for the lock.

Differential Revision: https://phabricator.services.mozilla.com/D166775
2023-02-17 04:17:24 +00:00
Paul Bone b9df18d3cb Bug 1816044 - Fix an ascii-art table r=glandium DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D169413
2023-02-15 06:10:10 +00:00
Razvan Cojocaru 5a6d9b05b7 Bug 1786774 - Make the memory allocator spinlocks always spin in kernel-space on macOS/AArch64. r=gsvelto
Differential Revision: https://phabricator.services.mozilla.com/D169067
2023-02-14 08:46:59 +00:00
Paul Bone 883afb9d00 Bug 1808429 - Disconnect runtime configuration from MOZ_DEBUG r=glandium
Some of the runtime options are compiled-in constants when MOZ_DEBUG is not
defined.  But it can be useful to enable these configuration options without
enabling the rest of MOZ_DEBUG (eg assertions).  This patch adds a new
preprocessor macro to enable runtime configuration.

Differential Revision: https://phabricator.services.mozilla.com/D165920
2023-01-20 06:21:12 +00:00
Paul Bone 95ef1322fd Bug 1808429 - Add the ability to enable and disable poisoning r=glandium
Poisoning was hardcoded, but to compare different allocators I wanted to
disable it.  This patch lets us control poisoning with the MALLOC_OPTIONS
environment variable.

Differential Revision: https://phabricator.services.mozilla.com/D165919
2023-01-20 06:21:12 +00:00
Paul Bone 4a359a003e Bug 1808429 - Fix non-existant parameters in code comment r=glandium
This comment refers to parameters that don't exist.

Differential Revision: https://phabricator.services.mozilla.com/D165918
2023-01-20 06:21:12 +00:00
Ray Kraesig 72c9c808cd Bug 1804499 - [4/4] Expose allocator's stall-specs beyond mozjemalloc.cpp r=glandium
Export `GetStallSpecs` as `mozilla::GetAllocatorStallSpecs`, when it exists.

Differential Revision: https://phabricator.services.mozilla.com/D165430
2023-01-20 01:50:54 +00:00
Ray Kraesig 4fcae818b2 Bug 1804499 - [3/4] Expose stall-and-retry code beyond mozjemalloc.cpp r=glandium
Extract the stall-and-retry logic from mozjemalloc into a header. Write
a unit test for it.

Differential Revision: https://phabricator.services.mozilla.com/D164107
2023-01-20 01:50:54 +00:00
Ray Kraesig 00c3eaa89a Bug 1804499 - [2/4] Factor out the stall logic in preparation for export r=glandium
In bug 1794059 it was noted that the IPC shared-memory allocation code
would like to be able to stall-and-retry as well using the same logic.

While it doesn't use VirtualAlloc, the principle is otherwise the same.
Shuffle the relevant code around so that the stall-and-retry logic is
separate from the allocation, in preparation for exporting it.

Differential Revision: https://phabricator.services.mozilla.com/D164106
2023-01-20 01:50:53 +00:00
Ray Kraesig 800ec51744 Bug 1804499 - [1/4] Handle Windows error code consistently r=glandium
The real ::VirtualAlloc does not modify the existing last-error code in
case of success; therefore, neither should we.

Differential Revision: https://phabricator.services.mozilla.com/D164105
2023-01-20 01:50:53 +00:00
Cosmin Sabou 2fa42b60ac Backed out 4 changesets (bug 1804499) for causing SM bustages.
Backed out changeset 54dd0be202ef (bug 1804499)
Backed out changeset 3131f330b55d (bug 1804499)
Backed out changeset 180af13cd33f (bug 1804499)
Backed out changeset a05c18f43067 (bug 1804499)
2023-01-19 18:56:08 +02:00
Ray Kraesig 611b09e06e Bug 1804499 - [4/4] Expose allocator's stall-specs beyond mozjemalloc.cpp r=glandium
Export `GetStallSpecs` as `mozilla::GetAllocatorStallSpecs`, when it exists.

Differential Revision: https://phabricator.services.mozilla.com/D165430
2023-01-19 16:16:43 +00:00
Ray Kraesig 0336c0891c Bug 1804499 - [3/4] Expose stall-and-retry code beyond mozjemalloc.cpp r=glandium
Extract the stall-and-retry logic from mozjemalloc into a header. Write
a unit test for it.

Differential Revision: https://phabricator.services.mozilla.com/D164107
2023-01-19 16:16:42 +00:00
Ray Kraesig 2696c25e5c Bug 1804499 - [2/4] Factor out the stall logic in preparation for export r=glandium
In bug 1794059 it was noted that the IPC shared-memory allocation code
would like to be able to stall-and-retry as well using the same logic.

While it doesn't use VirtualAlloc, the principle is otherwise the same.
Shuffle the relevant code around so that the stall-and-retry logic is
separate from the allocation, in preparation for exporting it.

Differential Revision: https://phabricator.services.mozilla.com/D164106
2023-01-19 16:16:42 +00:00
Ray Kraesig a27f258c20 Bug 1804499 - [1/4] Handle Windows error code consistently r=glandium
The real ::VirtualAlloc does not modify the existing last-error code in
case of success; therefore, neither should we.

Differential Revision: https://phabricator.services.mozilla.com/D164105
2023-01-19 16:16:41 +00:00
Paul Bone 4ea7329f5a Bug 1806049 - Explicitly use uint32_t r=glandium
We want to be precise about types used here.  Although in practice unsigned
is the same as uint32_t, it's not guaranteed.  We want to definitely use
32-bit multiplication as it can be faster than 64-bit.

Differential Revision: https://phabricator.services.mozilla.com/D164889
2023-01-10 22:30:05 +00:00
Paul Bone f9bccca030 Bug 1806049 - Test all divisions r=glandium
Don't wait until runtime to test that all valid divisions work.  Test them
during initialisation in debug builds.

Differential Revision: https://phabricator.services.mozilla.com/D164888
2023-01-10 22:30:05 +00:00
Paul Bone bfb66a35a9 Bug 1806049 - Rename the FastDivisor variables r=glandium
Rename the `m` and `p` variables to match those used in the Hacker's Delight
book where the algorithm is presented.  There were also some inconsistent
names in comments that this fixes.

Differential Revision: https://phabricator.services.mozilla.com/D164887
2023-01-10 22:30:04 +00:00
Paul Bone e180463f6d Bug 1806049 - Improve some code comments r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D164886
2023-01-10 22:30:04 +00:00
Cosmin Sabou ffddc62071 Bug 1801836 - Fix black linting opt failure on memory/replace/dmd/dmd.py. a=lint-fix 2022-12-25 11:35:54 +02:00
Marco Castelluccio f69e697461 Bug 1801836 - Remove no longer necessary 'from __future__' imports. r=linter-reviewers,glandium,webdriver-reviewers,perftest-reviewers,geckoview-reviewers,jld,ahal,owlish,afinder DONTBUILD
Differential Revision: https://phabricator.services.mozilla.com/D165395
2022-12-23 22:45:46 +00:00
Jeff Muizelaar d7cb72e2ac Bug 1805690 - Convert block_analyzer.py to python3. r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D164687
2022-12-15 18:08:40 +00:00
Otto Länd fe6866347e Bug 1743322, 1743322: apply code formatting via Lando
# ignore-this-changeset
2022-12-13 04:26:05 +00:00
Paul Bone a1aa315882 Bug 1743322 - Make arena_bin_t 32 or 48 bytes long r=glandium
This structure is more optimal if it is somewhat aligned with the system's
cache line length (which we assume is 64 bytes but that's not always true).
This reduces the number of cache lines required to access one record on
average. On 32-bit systems we can manage 32-bytes, on 64-bit systems we can
manage 48 bytes. We do this by:

 * Make mRunSize the number of pages in a run rather than bytes, so that it can
   be stored in a single byte and save some space in bin headers.

 * Make mNumRuns a uint32_t on all platforms.

Differential Revision: https://phabricator.services.mozilla.com/D140036
2022-12-13 04:21:15 +00:00
Paul Bone 3932940e08 Bug 1743322 - Remove branches that decide how to divide r=glandium
This code path would choose from several ways about how to divide numbers.
By calculating the inverse of the divisor early we can elude all the
branches along this code path we can make it faster than the previous code
or naive division.

Differential Revision: https://phabricator.services.mozilla.com/D132322
2022-12-13 04:21:15 +00:00
Norisz Fay 70bc66e002 Backed out 3 changesets (bug 1743322) for causing multiple failures CLOSED TREE
Backed out changeset fa443c853d2d
Backed out changeset d299fa6358f7 (bug 1743322)
Backed out changeset 25647d613534 (bug 1743322)
2022-12-06 11:48:14 +02:00
Otto Länd 8b4f88bf4a No bug: apply code formatting via Lando
# ignore-this-changeset
2022-12-06 00:53:23 +00:00
Paul Bone 2423f4ad0b Bug 1743322 - Make arena_bin_t 32 or 48 bytes long r=glandium
This structure is more optimal if it is somewhat aligned with the system's
cache line length (which we assume is 64 bytes but that's not always true).
This reduces the number of cache lines required to access one record on
average. On 32-bit systems we can manage 32-bytes, on 64-bit systems we can
manage 48 bytes. We do this by:

 * Make mRunSize the number of pages in a run rather than bytes, so that it can
   be stored in a single byte and save some space in bin headers.

 * Make mNumRuns a uint32_t on all platforms.

Differential Revision: https://phabricator.services.mozilla.com/D140036
2022-12-06 00:50:51 +00:00
Paul Bone 763f464a09 Bug 1743322 - Remove branches that decide how to divide r=glandium
This code path would choose from several ways about how to divide numbers.
By calculating the inverse of the divisor early we can elude all the
branches along this code path we can make it faster than the previous code
or naive division.

Differential Revision: https://phabricator.services.mozilla.com/D132322
2022-12-06 00:50:51 +00:00
Cristian Tuns c33879cb48 Backed out changeset e59efc28ac89 (bug 1802675) for causing win10 2004 failures CLOSED TREE 2022-12-02 00:11:36 -05:00
Mike Hommey df471cb5dc Bug 1802675 - Don't build winheap.cpp unless MOZ_MEMORY is set. r=pbone
Differential Revision: https://phabricator.services.mozilla.com/D163383
2022-12-02 03:51:33 +00:00
Alexandre Lissy 5d0257721a Bug 1798711 - Remove duplication of DisableCrashReporter on gtest r=ahal
Differential Revision: https://phabricator.services.mozilla.com/D162972
2022-11-30 14:41:42 +00:00
Barret Rennie 5dc88760d5 Bug 1541508 - Use Services.env in memory/ r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D160141
2022-11-25 19:09:08 +00:00
Marco Castelluccio 54eb2ccba2 Bug 1790816 - Reformat memory/ with isort. r=linter-reviewers,ahal DONTBUILD
# ignore-this-changeset

Differential Revision: https://phabricator.services.mozilla.com/D162658
2022-11-24 15:10:26 +00:00
Robert Longson f39b618ff1 Bug 1799630 - replace sprintf by snprintf or SprintfLiteral r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D161573
2022-11-10 07:01:11 +00:00
Csoregi Natalia 4e0bebb175 Backed out changeset 53c18b7903db (bug 1799630) for causing hybrid bustages on CocoaGamepad.cpp. CLOSED TREE 2022-11-10 01:27:08 +02:00
Robert Longson 143ac3fe87 Bug 1799630 - replace sprintf by snprintf or SprintfLiteral r=emilio
Differential Revision: https://phabricator.services.mozilla.com/D161573
2022-11-09 20:00:18 +00:00
Cristian Tuns 4d37cf70f1 Backed out 19 changesets (bug 1541508) for causing xpcshell failures on test_notHeadlessByDefault.js CLOSED TREE
Backed out changeset 08476fa2bc27 (bug 1541508)
Backed out changeset 0bf7514845db (bug 1541508)
Backed out changeset aa612a5e9ef7 (bug 1541508)
Backed out changeset 6bb9360473f7 (bug 1541508)
Backed out changeset b3d8e92f50c2 (bug 1541508)
Backed out changeset fa40dded133e (bug 1541508)
Backed out changeset 2e7db4aa8d4f (bug 1541508)
Backed out changeset 6098e2eb62ea (bug 1541508)
Backed out changeset 2c599ee639c4 (bug 1541508)
Backed out changeset 7d44f6e2644c (bug 1541508)
Backed out changeset c1279c3d674c (bug 1541508)
Backed out changeset 8bd08a62a590 (bug 1541508)
Backed out changeset 740010cb005c (bug 1541508)
Backed out changeset 0bfc7dd85c62 (bug 1541508)
Backed out changeset c4374a351356 (bug 1541508)
Backed out changeset 44ccfeca7364 (bug 1541508)
Backed out changeset e944e706a523 (bug 1541508)
Backed out changeset 2c59d66f43e4 (bug 1541508)
Backed out changeset a1896eacb6f1 (bug 1541508)
2022-11-01 22:38:52 -04:00
Barret Rennie 5342e30b52 Bug 1541508 - Use Services.env in memory/ r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D160141
2022-11-02 02:08:55 +00:00
Nika Layzell f8e46f7fb5 Bug 1797354 - Allow specifying capability type in thread-safety macros, r=jesup,media-playback-reviewers,alwu
It is possible to specify full names for capabilities when using the clang
thread-safety analysis which will be used in error messages. We should use that
form of the attribute rather than the legacy lockable attribute.

Differential Revision: https://phabricator.services.mozilla.com/D160531
2022-10-28 19:55:30 +00:00
Tom Ritter 8de303c52d Bug 1794594: Remove codeql builds r=freddyb,firefox-build-system-reviewers,nalexander
Differential Revision: https://phabricator.services.mozilla.com/D159433
2022-10-17 15:02:39 +00:00
Ray Kraesig b90e6da27e Bug 1785162 - Allow child-process half-stalls to ride the trains r=glandium,gsvelto
The past couple of weeks of crash telemetry indicate that stalling on
OOM in child processes for half as long as in main processes drastically
reduces child process OOM crashes without noticeably increasing
main-process OOM crashes.

Give it a ticket and send it on its way.

Differential Revision: https://phabricator.services.mozilla.com/D158790
2022-10-07 15:40:24 +00:00
Mark Banner 8d1ebcb9d6 Bug 1792365 - Convert toolkit/modules consumers to use ES module imports directly. r=webdriver-reviewers,perftest-reviewers,geckoview-reviewers,extension-reviewers,preferences-reviewers,desktop-theme-reviewers,application-update-reviewers,pip-reviewers,credential-management-reviewers,robwu,Gijs,sgalich,bytesized,AlexandruIonescu,dao,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D158094
2022-09-29 06:52:34 +00:00
Ray Kraesig 310ef2663b Bug 1785162 - [3/3] stall for half time in non-main processes r=gsvelto
Retain the full stall period in the main process; stall for only half as
long in all other processes.

Differential Revision: https://phabricator.services.mozilla.com/D157140
2022-09-22 15:01:42 +00:00
Ray Kraesig adac61618a Bug 1785162 - [2/3] refactor to specify stall count and time r=glandium,gsvelto
Refactor to allow specifying a potentially variable stall-count and
-time, rather than a binary stall/don't-stall cue.

No functional changes; this facility will actually be used in the next
commit.

Differential Revision: https://phabricator.services.mozilla.com/D157139
2022-09-22 15:01:42 +00:00
Ray Kraesig f30c547ca5 Bug 1785162 - [1/3] Revert "Disable all-process stalling in Nightly" r=gsvelto
Sufficient data has been acquired to confirm that all-stall does indeed
increase the chance of a main-process OOM compared to just main-stall.

Revert to all-stall anyway, solely to simplify the next two commits.

Differential Revision: https://phabricator.services.mozilla.com/D157138
2022-09-22 15:01:42 +00:00
Ray Kraesig 75b7dee465 Bug 1207753 - Add TS annotations for some mozjemalloc mutexes r=jesup
Add thread-safety annotations for a few of the mutexes in mozjemalloc.

Differential Revision: https://phabricator.services.mozilla.com/D157858
2022-09-22 15:00:44 +00:00
Joel Maher f668f1c655 Bug 1790868 - clean up 32 bit annotations for tests that don't run on 32 bit, and general cleanup. r=aryx
Differential Revision: https://phabricator.services.mozilla.com/D157352
2022-09-16 12:40:13 +00:00
Ray Kraesig dbdb9db19d Bug 1785162 - Disable all-process stalling in Nightly r=gsvelto
A recent patch for bug 965392 (now reverted) may have been causing
additional memory use and OOM-crashes. To confirm this, temporarily(?)
revert all-process stalling on Nightly to the main-process-only version
active between 2022-07-28 and 2022-08-25, to collect a few days' worth of
telemetry.

On Beta and later, there are no functional changes.

Differential Revision: https://phabricator.services.mozilla.com/D157124
2022-09-13 18:34:43 +00:00
Ray Kraesig 709d56796c Bug 1785162 - Always stall on OOM on Windows in Nightly r=gsvelto
It's suspected that this may induce performance regressions. Do it
anyway, just to find out how bad it is. (But only on Nightly, for now.)

For simplicity's sake, this does not include any additional telemetry;
the decision of whether and what any additional telemetry is needed will
be deferred until we have some feedback from what we've already got.

Differential Revision: https://phabricator.services.mozilla.com/D155301
2022-08-25 19:35:32 +00:00
Ray Kraesig 613c6089f5 Bug 1716727 - patchset #3 [1/1] - Cleanup: remove intermediate function r=glandium
Since mozglue is now aware of Gecko process-types, remove the
configurator for this bug's associated experiment. Instead, use
`GeckoProcessType` directly in mozjemalloc.

This requires a couple of adjustments for non-Firefox uses of
mozjemalloc:

- Since `logalloc-replay` uses mozjemalloc in an odd way, tweak its
  `moz.build` to also include `mozglue/misc/ProcessType.cpp`.
- Since `GeckoProcessType` is not available in standalone SpiderMonkey
  builds, make the mostly-arbitrarily choice to always stall there.

No functional changes.

Differential Revision: https://phabricator.services.mozilla.com/D155300
2022-08-25 14:44:47 +00:00
Gabriele Svelto 44cbaf4248 Bug 1784018 - Remove deprecated OSSpinLocks r=glandium
On macOS versions prior to 10.15 os_unfair_locks cannot spin in kernel-space
which degrades performance significantly. To obviate for this we spin in
user-space like OSSpinLock does, for the same number of times and invoking
x86-specific pause instructions in-between the locking attempts to avoid
starving a thread that might be running on the same physical core.

Differential Revision: https://phabricator.services.mozilla.com/D154205
2022-08-24 09:18:57 +00:00
Ray Kraesig 52e0d53fb0 Bug 1716727 - patchset #2 [2/2] Deexperimentalize stalling code r=glandium
Although further experiments and refinements are called for, the effect
of this patch has been overall significantly positive. Let it ride the
trains as-is for Fx 105, rather than blocking on those experiments.

(This patch conflicts with D153784, which will need to be rebased and
moved to a new Bugzilla bug.)

Depends on D153783

Differential Revision: https://phabricator.services.mozilla.com/D154839
2022-08-18 20:32:26 +00:00
Ray Kraesig b70021268a Bug 1716727 - patchset #2 [1/2] - Assorted minor cleanup r=glandium,bobowen
Since the plausible timeframe for immediate panicked reversion of the
previous patchset has passed without incident, unpin and clean up the
remaining uses of `sChildProcessType` from nsEmbedFunctions.cpp.

Additionally, get rid of the rump declaration of `..._set_always_stall`
on non-Windows builds.

No functional changes.

(Reference: bug 1682520, D152198.)

Differential Revision: https://phabricator.services.mozilla.com/D153783
2022-08-18 20:32:26 +00:00
Gerald Squelart 42904cee2c Bug 1784812 - Make all JSONWriteFunc-derived classes and their overriden methods final - r=canaltinova
All JSONWriteFuncs are effectively final, this patch enforces that, hopefully
helping the compiler to de-virtualize some calls.

Differential Revision: https://phabricator.services.mozilla.com/D154619
2022-08-17 07:07:54 +00:00
Iulian Moraru 859487ba6b Backed out 4 changesets (bug 1784812) for causing build bustages on DDMediaLogs. CLOSED TREE
Backed out changeset c9998c927079 (bug 1784812)
Backed out changeset d2568bc2f8a6 (bug 1784812)
Backed out changeset 9f01bf89c583 (bug 1784812)
Backed out changeset d8506496d8f2 (bug 1784812)
2022-08-17 05:48:36 +03:00
Gerald Squelart d7c05cb55e Bug 1784812 - Make all JSONWriteFunc-derived classes and their overriden methods final - r=canaltinova
All JSONWriteFuncs are effectively final, this patch enforces that, hopefully
helping the compiler to de-virtualize some calls.

Depends on D154618

Differential Revision: https://phabricator.services.mozilla.com/D154619
2022-08-16 22:57:50 +00:00
Fabrice Desré c50cb528fc Bug 1761040 - Prefix thread safety macros with MOZ_ r=geckoview-reviewers,media-playback-reviewers,alwu,jesup,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D152575
2022-08-03 16:39:41 +00:00
Andreea Pavel 3ccd75af8d Backed out changeset b9d2965591b9 (bug 1761040) for landing with wrong author CLOSED TREE DONTBUILD 2022-08-03 18:55:00 +03:00
Andreea Pavel fdb7cb2ecd Bug 1761040 - Prefix thread safety macros with MOZ_ r=geckoview-reviewers,media-playback-reviewers,alwu,jesup,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D152575
2022-08-03 15:27:43 +00:00
Mark Banner 7428be4a86 Bug 1782008 - Remove now unnecessary .eslintrc.js files. r=webcompat-reviewers,extension-reviewers,media-playback-reviewers,pip-reviewers,denschub,rpl,alwu,mossop
Differential Revision: https://phabricator.services.mozilla.com/D152736
2022-08-03 11:16:20 +00:00
Andreea Pavel 89d63c91e6 Backed out changeset a907159a482f (bug 1761040) for causing build bustages on a CLOSED TREE 2022-08-02 04:59:08 +03:00
Fabrice Desré 0f4ac7ad97 Bug 1761040 - Prefix thread safety macros with MOZ_ r=geckoview-reviewers,media-playback-reviewers,alwu,jesup,m_kato
Differential Revision: https://phabricator.services.mozilla.com/D152575
2022-08-02 00:49:41 +00:00
Ray Kraesig 5f25d69d33 Bug 1782027 - Fix bustage in simulated early-beta Windows builds r=gcp
... which was entirely due to a trivial error on my part.

Differential Revision: https://phabricator.services.mozilla.com/D153109
2022-07-28 19:11:20 +00:00
Ray Kraesig a63e2430bf Bug 1716727 - [3/3] make stalling behavior conditional on process type r=glandium
For now, make Set_XREProcessType set a flag in mozjemalloc to avoid
stalling repeatedly in auxiliary processes.

Differential Revision: https://phabricator.services.mozilla.com/D151332
2022-07-27 19:54:36 +00:00
Ray Kraesig 44a45dc8a5 Bug 1716727 - [2/3] OOM handling: stall and retry r=glandium,gsvelto
Implement a drop-in-replacement wrapper for `VirtualAlloc` which, rather
than returning immediately on failure, instead `::Sleep()`s and retries.

This will cause performance regressions in some (presumed-uncommon)
circumstances; this wrapper is therefore only enabled in Nightly, to
collect data on its efficacy and on the severity of those regressions.

Differential Revision: https://phabricator.services.mozilla.com/D150619
2022-07-27 19:54:36 +00:00
Ray Kraesig ca8b982e11 Bug 1716727 - [1/3] Drive-by cleanup: clang-tidy nitpicks r=glandium
Some trivially-resolvable nitpicks pointed out by clang-tidy.

Differential Revision: https://phabricator.services.mozilla.com/D150618
2022-07-27 19:54:35 +00:00
Butkovits Atila 1402637e8b Backed out 3 changesets (bug 1716727) for causing build bustages. CLOSED TREE
Backed out changeset 11fb3262cccb (bug 1716727)
Backed out changeset 895ad6545236 (bug 1716727)
Backed out changeset c0fd4f429cd8 (bug 1716727)
2022-07-27 04:01:16 +03:00
Ray Kraesig 4ec2a2d0b4 Bug 1716727 - [3/3] make stalling behavior conditional on process type r=glandium
For now, make Set_XREProcessType set a flag in mozjemalloc to avoid
stalling repeatedly in auxiliary processes.

Differential Revision: https://phabricator.services.mozilla.com/D151332
2022-07-27 00:30:04 +00:00
Ray Kraesig 55f93cc62f Bug 1716727 - [2/3] OOM handling: stall and retry r=glandium,gsvelto
Implement a drop-in-replacement wrapper for `VirtualAlloc` which, rather
than returning immediately on failure, instead `::Sleep()`s and retries.

This will cause performance regressions in some (presumed-uncommon)
circumstances; this wrapper is therefore only enabled in Nightly, to
collect data on its efficacy and on the severity of those regressions.

Differential Revision: https://phabricator.services.mozilla.com/D150619
2022-07-27 00:30:04 +00:00
Ray Kraesig 1b26c65a01 Bug 1716727 - [1/3] Drive-by cleanup: clang-tidy nitpicks r=glandium
Some trivially-resolvable nitpicks pointed out by clang-tidy.

Differential Revision: https://phabricator.services.mozilla.com/D150618
2022-07-27 00:30:03 +00:00
Paul Bone 7a49f8892c Bug 1742828 - Enable more aggressive allocation packing on MacOS r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D139800
2022-07-26 23:54:17 +00:00
Tooru Fujisawa bf93d07148 Bug 1667455 - Part 5: Stop importing Services.jsm from chrome-priv JS code, top-level single-line cases. r=kmag,webdriver-reviewers,perftest-reviewers,webcompat-reviewers,geckoview-reviewers,extension-reviewers,application-update-reviewers,pip-reviewers,twisniewski,m_kato,jdescottes,mconley,AlexandruIonescu,mossop
Differential Revision: https://phabricator.services.mozilla.com/D150894
2022-07-11 12:41:50 +00:00
Ray Kraesig 1f4a9dd483 Bug 1207753 - add thread-safety annotations to memory/build's Mutex types r=glandium,jesup
Add the customary bevy of thread-safety annotations to the Mutex types
in memory/build.

Almost all existing instances of these Mutexes are already marked with
MOZ_UNANNOTATED, but this turns out not to matter: MOZ_UNANNOTATED has
no equivalent under clang's `-Wthread-safety` attributes. There are no
variables declared to be guarded by these mutexes, but they must still
be unlocked and relocked in principled ways -- or, alternatively, only
have unverifiable actions taken in appropriately-annotated code.

The primary offenders here are the `pthread_atfork` hooks; these can't
all be annotated precisely (and couldn't be checked even if they were),
so we simply mark them all as unanalyzable. The only other warning is
from a highly unusual (but already well-commented) bit in PHC.cpp where
we manually release an autolocked mutex before crashing.

Differential Revision: https://phabricator.services.mozilla.com/D150519
2022-07-08 21:24:03 +00:00
Gabriele Svelto 7e8fda1a8b Bug 1774458 - Use undocumented, non-public adaptive spinlocks on macOS 10.15+, revert to user-space spinlocks on older versions r=pbone
Differential Revision: https://phabricator.services.mozilla.com/D149599
2022-07-04 14:00:11 +00:00
smolnar 1ae6fdb86e Backed out changeset 6d913c78ba72 (bug 1207753) for causing build bustages in memory/replace/logalloc/LogAlloc.cpp CLOSED TREE 2022-06-30 20:44:00 +03:00
Ray Kraesig ec7d45d247 Bug 1207753 - add thread-safety annotations to memory/build's Mutex types r=glandium,jesup
Add the customary bevy of thread-safety annotations to the Mutex types
in memory/build.

Almost all existing instances of these Mutexes are already marked with
MOZ_UNANNOTATED, so there's not much else required for this patch. The
sole exception is a highly unusual (but already well-commented) bit in
PHC.cpp where we manually release an autolocked mutex before crashing.

Differential Revision: https://phabricator.services.mozilla.com/D150519
2022-06-30 17:25:28 +00:00
Andrew McCreight 17068ff57b Bug 1776103 - Clean up DMD docs. r=xpcom-reviewers,nika DONTBUILD
I went through the docs and fixed up a few things. I also removed the other
version that was imported under XPCOM, updated a few obsolete MDN links that
now have updated docs, and deleted some ancient Bonsai links.

Differential Revision: https://phabricator.services.mozilla.com/D150504
2022-06-29 21:41:04 +00:00
Ryan VanderMeulen 357cb02321 Bug 1776455 - Don't define unused functions on Windows. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D150444
2022-06-29 13:18:22 +00:00
Bogdan Szekely b1f7582841 Backed out changeset 910652b53350 (bug 1774458) for causing build bustages on Mutex.cpp CLOSED TREE 2022-06-29 11:28:41 +03:00
Gabriele Svelto 6896218e59 Bug 1774458 - Use undocumented, non-public adaptive spinlocks on macOS 10.15+, revert to user-space spinlocks on older versions r=pbone
Differential Revision: https://phabricator.services.mozilla.com/D149599
2022-06-29 08:13:29 +00:00
Ray Kraesig fc7c4cd2b1 Bug 1776898: Add additional filtering capabilities to dmd.py r=mccr8
Extend dmd.py's filtering capabilities by allowing both multiple filters
and negated filters.

Differential Revision: https://phabricator.services.mozilla.com/D150481
2022-06-28 23:30:24 +00:00
Marian-Vasile Laza 6f25bc857b Backed out changeset ecea89cb3d35 (bug 1774458) for crashing on macOS 10.14 and older. CLOSED TREE 2022-06-24 01:56:51 +03:00
Gabriele Svelto de07e630cc Bug 1774458 - Use undocumented, non-public adaptive spinlocks on macOS r=pbone
Differential Revision: https://phabricator.services.mozilla.com/D149599
2022-06-23 20:45:03 +00:00
Gabriele Svelto 8f9904bb76 Bug 1670885 - Replace deprecated NSSpinLocks with os_unfair_locks in the memory allocator r=glandium
Depends on D148287

Differential Revision: https://phabricator.services.mozilla.com/D99280
2022-06-07 07:37:20 +00:00
Gabriele Svelto f56fb96281 Bug 1670885 - Fix post-fork() handlers for PHC/LogAlloc to work on macOS using unfair locks r=glandium
macOS unfair locks enforce that a lock can only be released by the thread which locked it.

On macOS 11+ this caused the fork()'d child process to raise a SIGILL signal. Confusingly enough this behavior seems to be different on macOS 10.15 and possibly interacted in odd ways with our exception handler if it was installed before fork()-ing.

Differential Revision: https://phabricator.services.mozilla.com/D148287
2022-06-07 07:37:20 +00:00
Serge Guelton 7648a84eba Bug 1765593 - Cleanup mozilla-unified includes r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D144202
2022-05-03 14:57:45 +00:00
Randell Jesup fcaf70841e Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 18:47:08 +00:00
Noemi Erli 2390d257e6 Backed out changeset 12a59e5a50bf (bug 1207753) for causing build bustage CLOSED TREE 2022-03-16 18:32:51 +02:00
Randell Jesup 4b033a5256 Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 16:16:14 +00:00
Butkovits Atila 927ad62c6a Backed out changeset a68ee4b09f92 (bug 1207753) for causing Hazard bustages. CLOSED TREE 2022-03-16 14:38:14 +02:00
Randell Jesup 7d4b5fae04 Bug 1207753 - Add MOZ_UNANNOTATED to all Mutexes/Monitors r=nika,kershaw
Differential Revision: https://phabricator.services.mozilla.com/D140849
2022-03-16 12:01:14 +00:00
Zhao Jiazhong 62341514c5 Bug 1756570 - [loong64] Add basic build support for LoongArch64 port. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D139567
2022-02-25 03:42:34 +00:00
Mike Hommey 1acc37c7a6 Bug 1747756 - Move Windows system libraries from LIBS to moz.build. r=firefox-build-system-reviewers,mhentges
While mingw builds don't require user32 and advapi32 explicitly, it doesn't
hurt for them to be there (and they're required for clang-cl build).
Likewise, while clang-builds don't require uuid and userenv explicitly
because they're pulled in via #pragmas in the source code, mingw doesn't
support those #pragmas and needs them explicitly, which doesn't hurt the
clang-cl builds.

Differential Revision: https://phabricator.services.mozilla.com/D134737
2021-12-30 20:56:43 +00:00
Iulian Moraru b469802d84 Backed out changeset 7f9b4b6191ad (bug 1747756) for causing multiple failures. CLOSED TREE 2021-12-30 01:59:26 +02:00
Mike Hommey cb50a5444f Bug 1747756 - Move Windows system libraries from LIBS to moz.build. r=firefox-build-system-reviewers,mhentges
While mingw builds don't require user32 and advapi32 explicitly, it doesn't
hurt for them to be there (and they're required for clang-cl build).
Likewise, while clang-builds don't require uuid and userenv explicitly
because they're pulled in via #pragmas in the source code, mingw doesn't
support those #pragmas and needs them explicitly, which doesn't hurt the
clang-cl builds.

Differential Revision: https://phabricator.services.mozilla.com/D134737
2021-12-29 22:18:52 +00:00
Paul Bone bf37baf4e4 Bug 1743713 - Fix a warning for FdPrintf in PHC r=glandium
For a unified it is possible to include FdPrintf.cpp before FdPrintf.h which
creates a compilation warning for FdPrintf's attributes.  FdPrintf.cpp
should include FdPrintf.h so that the declaration always precedes the
definition.

Depends on D132913

Differential Revision: https://phabricator.services.mozilla.com/D132914
2021-12-07 22:27:21 +00:00
Paul Bone a83c4f05dd Bug 1743713 - Make --enable-project=memory work again r=glandium
Fix the reported error in Bug 1743713 plus a linker error.

Differential Revision: https://phabricator.services.mozilla.com/D132913
2021-12-07 22:27:20 +00:00
Chris Peterson f6fdbf028a Bug 1738401 - Remove -Wno-shadow warning suppressions. r=firefox-build-system-reviewers,glandium
-Wshadow warnings are not enabled globally, so these -Wno-shadow suppressions have no effect. I had intended to enable -Wshadow globally along with these suppressions in some directories (in bug 1272513), but that was blocked by other issues.

There are too many -Wshadow warnings (now over 2000) to realistically fix them all. We should remove all these unnecessary -Wno-shadow flags cluttering many moz.build files.

Differential Revision: https://phabricator.services.mozilla.com/D132289
2021-12-01 06:40:04 +00:00
Gian-Carlo Pascutto 1d45775e8c Bug 1546442 - Add test for leading guard pages for normal allocations. r=glandium,pbone
Differential Revision: https://phabricator.services.mozilla.com/D132006
2021-11-26 11:46:25 +00:00
Gian-Carlo Pascutto b936d4f576 Bug 1546442 - Leading guard pages for normal allocations. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D28516
2021-11-26 11:46:25 +00:00
Paul Bone 9a5f36b0dd Bug 1735482 - Don't use a QuantumWide size class on MacOS r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D131576
2021-11-23 02:01:59 +00:00
Iulian Moraru 6cab1c251e Backed out changeset 85fdbf7e368a (bug 1735482) for causing OS X build bustages on mozjemalloc.cpp. CLOSED TREE 2021-11-22 19:01:35 +02:00
Paul Bone f7d8d8c80e Bug 1735482 - Don't use a QuantumWide size class on MacOS r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D131576
2021-11-22 16:40:52 +00:00
Paul Bone da23871ca8 Bug 1738240 - Convert the divide function to a template class r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D131197
2021-11-22 01:03:09 +00:00
Paul Bone 62af1f75c2 Bug 1738240 - Use fast-divide for QuantumWide r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D129807
2021-11-22 01:03:08 +00:00
Paul Bone 18f4d35973 Bug 1738240 - Move division routine out of arena_run_reg_dalloc r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D129806
2021-11-22 01:03:08 +00:00
Chris Peterson 50b1318658 Bug 1736968 - Change MOZ_CRASH() to MOZ_ASSUME_UNREACHABLE_MARKER() for abort()'s ARM noreturn case. r=glandium
This MOZ_CRASH() is redundant after calling noreturn function mozalloc_abort. The MOZ_ASSUME_UNREACHABLE_MARKER() annotation makes ARM's "function declared 'noreturn' should not return" warnings go away.

Differential Revision: https://phabricator.services.mozilla.com/D129115
2021-10-29 06:04:09 +00:00
Chris Peterson e6b872fb38 Bug 1736968 - Pass mozalloc_abort() crash reason to MOZ_CRASH() to distinguish mozalloc_abort() and bare MOZ_CRASH() crashes. r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D129114
2021-10-29 06:04:08 +00:00
Paul Bone 24067c4312 Bug 1737199 - Avoid some VLAs when using jemalloc_stats r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D129228
2021-10-27 08:46:51 +00:00
criss 5e97bafc4e Backed out changeset 27b73fdbb4a9 (bug 1737199) for causing bustages on memory/replace/logalloc/replay/Replay.cpp. CLOSED TREE 2021-10-26 13:00:29 +03:00
Paul Bone a4b9d48ced Bug 1737199 - Avoid some VLAs when using jemalloc_stats r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D129228
2021-10-26 05:22:05 +00:00
Paul Bone 376c53fd56 Bug 1736766 - Don't include internal DMD stack frames in reports r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D128983
2021-10-21 23:17:04 +00:00
Paul Bone 1a20d57362 Bug 1735250 - Provide a less-magic array size for jemalloc_stats r=glandium
jemalloc_stats takes an array for its second argument.  It expects this
array to have enough space for all the bins, previously the maximum was set
as a magic number.  To make it dependent on the configured bins this patch
replaces the compile-time constant with a function.

Differential Revision: https://phabricator.services.mozilla.com/D127761
2021-10-21 06:42:34 +00:00
Paul Bone 1b721fc414 Bug 1735715 - Handle gMaxSubPageClass == 0 properly r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D128448
2021-10-21 06:03:45 +00:00
Paul Bone cc06afa32e Bug 1669392 - Add more jemalloc size classes r=glandium
Differential Revision: https://phabricator.services.mozilla.com/D92729
2021-10-13 06:53:20 +00:00
Marian-Vasile Laza ac6c5e156e Backed out changeset 9de9bd47c061 (bug 1669392) for causing build bustages. 2021-10-12 04:18:26 +03:00