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

19874 Коммитов

Автор SHA1 Сообщение Дата
Robert Longson 46d24ea87e Bug 1581691 - make transform-origin a mapped CSS attribute r=heycam,hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D63016
2020-04-18 05:10:29 +00:00
Cosmin Sabou 52b7bc2fa6 Backed out changeset 136b9329a6f7 (bug 1581691) for failures on svg/styling/presentation-attributes-relevant.html. 2020-04-18 06:15:10 +03:00
Robert Longson 650b69563f Bug 1581691 - make transform-origin a mapped CSS attribute r=heycam,hsivonen
Differential Revision: https://phabricator.services.mozilla.com/D63016
2020-04-18 01:32:40 +00:00
Nika Layzell 9fdd774725 Bug 1630777 - Relax Span nsTArray methods, r=xpcom-reviewers,sg
Relaxes the type constraints for span overloads on `nsTArray`, such as
`AppendElements`. They previously took `Span<const Item>`, which could cause
build errors when attempting to pass a non const-qualified Item such as in
`Span<RefPtr<BrowsingContext>>`.

Differential Revision: https://phabricator.services.mozilla.com/D71232
2020-04-17 20:17:01 +00:00
Valentin Gosu 0b2e4bafd9 Bug 1625749 - Make sure SlicedInputStream initializes all its members. r=nika
Differential Revision: https://phabricator.services.mozilla.com/D70919
2020-04-14 18:04:13 +00:00
Konstantin Morozov ea1011eb87 Bug 1629432 - converting integer literal to bool. r=sylvestre
Differential Revision: https://phabricator.services.mozilla.com/D71181
2020-04-16 14:14:08 +00:00
Gijs Kruitbosch af2df0c8a7 Bug 1614795 - use the background task queue for startupcache writes, r=dthayer,decoder
Prior to this patch, the startupcache created its own mWriteThread off which it
wrote to disk. It's initialized by MaybeSpawnWriteThread, which got called
at shutdown, to do the shutdown write if there was any reason to do so, and
from a timer that is re-initialized after every addition to the startup cache,
to run 60s after the last change to the cache.

It then joined that write thread on the main thread (in other words, blocks
on that off-main-thread write completing from the main thread) when:
- xpcom-shutdown fired
- the startupcache itself gets destroyed
- someone calls any of:
  * HasEntry
  * GetBuffer
  * PutBuffer
  * InvalidateCache

This patch removes the separate write thread, and instead dispatches a task to
the background task queue, indicating it can block. The task is started in
the same circumstances where we previously used to write (timer from the last
PutBuffer call, and shutdown if necessary).

To ensure it cannot be trying to use the data it writes out (mTable) from
the other thread while that data changes on the main thread, we use a mutex.
The task locks the mutex before starting, and unlocks when finished.
Enumerating the cases that we used to block on joining the thread:

In terms of application shutdown, we expect the background task queue to
either finish the write task, or fail to run it if it hasn't started it yet.
In the FastStartup case, we check if a write was necessary; if so, we
attempt to gain the lock without waiting. If we're successful, the write has
not yet started, and we instead run the write on the main thread. Otherwise,
we retry gaining the lock, blocking this time, thus guaranteeing the
off-the-main-thread write completes.

The task keeps a reference to the startupcache object, so it cannot be
destroyed while the task is pending.

Because the write does not modify `mTable`, and neither does `HasEntry`,
we do not need to do anything there.

In the `GetBuffer` case, we do not modify the table unless we have to read
the entry off disk (memmapped into `mCacheData`). This can only happen if
`mCacheData.initialized()` returns true, and we specifically call
`mCacheData.reset()` before firing off the write task to avoid this.
`mCacheData` is only re-initialized if someone calls `LoadArchive()`,
which can only happen from `Init()` (which is guaranteed not to run
again because this is a singleton), or `InvalidateCache()`, where we lock
the mutex (see below). So this is safe - but we assert on the lock to try
and avoid people breaking this chain of assumptions in the future.

When `PutBuffer` is called, we try to lock the mutex - but if locking fails
(ie the background thread is writing), we simply fail to store the entry
in the startupcache. In practice, this should be rare - it'd happen if
new calls to PutBuffer happen while writing during shutdown (when really,
we don't care) or when it's been 60 seconds since the last PutBuffer so
we started writing the startupcache.

When InvalidateCache is called, we lock the mutex - we shouldn't try to
write while invalidating, or invalidate while writing. This may be slow,
but in practice nothing should call `InvalidateCache` except developer
restarts or the `-purgecaches` commandline flag, so it shouldn't
matter a great deal.

Differential Revision: https://phabricator.services.mozilla.com/D70413

--HG--
extra : moz-landing-system : lando
2020-04-15 20:43:44 +00:00
Andrew McCreight 42e0af89fb Bug 1630254, part 2 - Run tasks after every shutdown cycle collection. r=smaug
Unlinking, such as in UnbindFromTree, can add runnables that keep alive CCed
objects after they have been unlinked. In combination with some unknown
fields not being traversed and unlinked this could cause intermittent shutdown
leaks, if those unknown fields hold alive objects that need the CC to be
collected. Work around this by clearing out these runnables after every
shutdown CC.

Also, fix the order of these two steps, which was apparently wrong
before.

Differential Revision: https://phabricator.services.mozilla.com/D71049

--HG--
extra : moz-landing-system : lando
2020-04-15 19:03:03 +00:00
Andrew McCreight d3e9e9a83f Bug 1630254, part 1 - Make nsCycleCollector::Shutdown MOZ_CAN_RUN_SCRIPT. r=smaug
This is to prepare for the next patch.

Differential Revision: https://phabricator.services.mozilla.com/D71048

--HG--
extra : moz-landing-system : lando
2020-04-15 19:02:43 +00:00
Ricky Stewart cb6b22fac9 Bug 1628954 - Don't use 'is' and 'is not' to perform comparison against strings in Python r=nalexander
Differential Revision: https://phabricator.services.mozilla.com/D71059

--HG--
extra : moz-landing-system : lando
2020-04-15 17:03:05 +00:00
Valentin Gosu b5c0442d4e Bug 1595886 - Use a temp string in readSegments r=dragana
Differential Revision: https://phabricator.services.mozilla.com/D68204

--HG--
extra : moz-landing-system : lando
2020-04-15 12:31:34 +00:00
Kristen Wright dcb3da64d1 Bug 1621359 - Update .idl files to work with ply3 r=mccr8
This pattern:
```
native nsSize (nsSize);
             ^
```
Causes a parsing error in `ply` 3.10. This can be easily fixed by removing the space and reformatting to this:
```
native nsSize(nsSize);
```

Differential Revision: https://phabricator.services.mozilla.com/D70711

--HG--
extra : moz-landing-system : lando
2020-04-14 17:17:38 +00:00
Chris H-C 28098bb7a3 Bug 1627561 - Fix non-Android non-Intel L3 cache size Telemetry r=mconley
L3 cache being present in /proc/cpuinfo is an Intel-ism. Use the cross-platform
/sys/devices instead.

Differential Revision: https://phabricator.services.mozilla.com/D70892

--HG--
extra : moz-landing-system : lando
2020-04-14 20:55:21 +00:00
Jon Coppeard 78e6febe6d Bug 1629022 - Fix build bustage in beta builds r=mccr8
The patch makes sure the checkSingleZoneHolders variable is always present.  I expect it will get optimised away in builds where it's unused.

Differential Revision: https://phabricator.services.mozilla.com/D70818

--HG--
extra : moz-landing-system : lando
2020-04-14 15:20:45 +00:00
Bogdan Tara 2d4b72dc82 Backed out changeset 181a123cd227 (bug 1629022) by jonco's request CLOSED TREE 2020-04-14 16:36:47 +03:00
Jon Coppeard 93fa5f1ac1 Bug 1629022 - Fix build bustage in beta builds r=mccr8
The patch makes sure the checkSingleZoneHolders variable is always present.  I expect it will get optimised away in builds where it's unused.

Differential Revision: https://phabricator.services.mozilla.com/D70818

--HG--
extra : moz-landing-system : lando
2020-04-14 13:28:11 +00:00
Olli Pettay ebe2702267 Bug 1627935 - PrioritizedEventQueue::GetEvent doesn't return the correct priority value, r=bas
One could possibly make larger changes to make the setup less error prone, but hopefully we'll
replace this code with the new scheduler relatively soon.
And the assertion there should still enforce correct behavior.

Differential Revision: https://phabricator.services.mozilla.com/D69988

--HG--
extra : moz-landing-system : lando
2020-04-13 22:22:57 +00:00
Simon Giesecke 069ef2ef55 Bug 1628697 - nsTArray::AppendElements(mozilla::Span<const Item> aSpan) should use ActualAlloc. r=xpcom-reviewers,erahm
Differential Revision: https://phabricator.services.mozilla.com/D70381

--HG--
extra : moz-landing-system : lando
2020-04-09 17:31:08 +00:00
Tooru Fujisawa 8c0843c04c Bug 1432749 - Part 1: Add DefaultHasher for nsTString. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D67836

--HG--
extra : moz-landing-system : lando
2020-04-14 06:00:05 +00:00
Cameron McCormack 4887043b29 Bug 1265030 - Show symbolic nsresult name in NS_ENSURE_SUCCESS warning. r=mccr8
Through their use of Smprintf, the existing warning message formatting
is resistant to OOM errors.  So I figured that we should probably use
something that doesn't infallibly allocate like GetErrorName does.

Differential Revision: https://phabricator.services.mozilla.com/D70771

--HG--
extra : moz-landing-system : lando
2020-04-13 23:39:19 +00:00
Nicholas Nethercote 8139b4051e Bug 1619840 - Remove `fix_{linux,macosx}_stack.py` and `fix_stack_using_bpsyms.py`. r=erahm
This commit removes `test_fix_stack_using_bpsyms.py`. That test can't easily be
modified to work with `fix_stacks.py` because it relies on internal
implementation details of `fix_stack_using_bpsym.py`. The unit testing done in
the `fix-stacks` repo provides test coverage that is as good or better.

Differential Revision: https://phabricator.services.mozilla.com/D66924

--HG--
extra : moz-landing-system : lando
2020-04-08 06:55:54 +00:00
Narcis Beleuzu 1783003a34 Backed out 3 changesets (bug 1624150, bug 1432749) for wpt failures at open-features-tokenization-top-left.html. CLOSED TREE
Backed out changeset ff061c8d9da9 (bug 1624150)
Backed out changeset 7e96d4acf317 (bug 1432749)
Backed out changeset a95f77732a1c (bug 1432749)
2020-04-13 22:51:48 +03:00
Tooru Fujisawa c2e8f7014c Bug 1432749 - Part 1: Add DefaultHasher for nsTString. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D67836

--HG--
extra : moz-landing-system : lando
2020-04-13 15:42:06 +00:00
Cameron McCormack 396dcd374d Bug 1629342 - Print string stats on process exit only if there is a leak. r=erahm,mccr8
I don't think anyone particularly cares about these stats.

Differential Revision: https://phabricator.services.mozilla.com/D70638

--HG--
extra : moz-landing-system : lando
2020-04-12 17:23:12 +00:00
Honza Bambas aa4bbee2f9 Bug 1627572 - Use an atomic bool for a quick-return check in FilePreferences::IsAllowedPath, r=michal
Differential Revision: https://phabricator.services.mozilla.com/D69976

--HG--
extra : moz-landing-system : lando
2020-04-07 11:18:54 +00:00
Emma Malysz 92820f83c2 Bug 1625553, change cpuCount value to int to avoid incorrect telemetry r=mconley
Differential Revision: https://phabricator.services.mozilla.com/D70116

--HG--
extra : moz-landing-system : lando
2020-04-09 19:33:13 +00:00
Jon Coppeard 11fc44d6aa Bug 1628371 - Check whether JS holders are single-zone in nightly builds too r=mccr8
Differential Revision: https://phabricator.services.mozilla.com/D70220

--HG--
extra : moz-landing-system : lando
2020-04-09 09:50:26 +00:00
Matt Woodrow e600940a82 Bug 1597159 - Defer creating DocumentLoadListener's stream filter until after we process switch. r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D64698

--HG--
extra : moz-landing-system : lando
2020-04-09 07:03:49 +00:00
Gerald Squelart baa5044bbb Bug 1627097 - Profiler synchronously collect processor information - r=emalysz
Differential Revision: https://phabricator.services.mozilla.com/D69922

--HG--
extra : moz-landing-system : lando
2020-04-08 22:35:54 +00:00
Eric Rahm 905929aa4e Bug 1627131 - Part 3: Move nsTString<T>::Contains implementation. r=xpcom-reviewers,sg
`kNotFound` isn't actually defined in `nsTStringRepr.h`.

Differential Revision: https://phabricator.services.mozilla.com/D69468

--HG--
extra : moz-landing-system : lando
2020-04-08 10:46:25 +00:00
Eric Rahm 2c52ea2bb0 Bug 1627131 - Part 2: Move template function instantiations to definitions. r=xpcom-reviewers,sg
The instantiations of the externed templates need to be in the same translation unit as the definitions. Currently they work due to building in unified mode.

Differential Revision: https://phabricator.services.mozilla.com/D69467

--HG--
extra : moz-landing-system : lando
2020-04-08 10:46:02 +00:00
Eric Rahm 034401e7e4 Bug 1627131 - Part 1: Add missing includes to xpcom/string. r=xpcom-reviewers,nika
Differential Revision: https://phabricator.services.mozilla.com/D69466

--HG--
extra : moz-landing-system : lando
2020-04-03 21:08:13 +00:00
Eric Rahm 8e4a18ed64 Bug 1627392 - Add missing includes and namespaces to xpcom/base. r=xpcom-reviewers,sg
Differential Revision: https://phabricator.services.mozilla.com/D69658

--HG--
extra : moz-landing-system : lando
2020-04-08 10:12:33 +00:00
Marco Bonardo 758aa4f647 Bug 1496578 - convert nsDefaultURIFixup to URIFixup.jsm. r=Gijs,farre
Differential Revision: https://phabricator.services.mozilla.com/D66579

--HG--
extra : moz-landing-system : lando
2020-04-08 11:30:14 +00:00
Nika Layzell dd1ef62596 Bug 1616353 - Part 3: Use an attribute to set geckoViewUserContextId on a browser, r=geckoview-reviewers,esawin
This is necessary to avoid the use of setOriginAttributesBeforeLoading, which is
being removed in this patch set.

Differential Revision: https://phabricator.services.mozilla.com/D67042

--HG--
extra : moz-landing-system : lando
2020-04-07 21:39:04 +00:00
Razvan Maries 3b66f5f729 Backed out changeset b86e8f2cc5db (bug 1496578) for build bustages on nsDocShell.cpp. CLOSED TREE 2020-04-08 01:16:33 +03:00
Eric Rahm 73c5285b22 Bug 1627391 - Add missing includes and namespaces to xpcom/threads. r=xpcom-reviewers,sg
Also moves `nsThreadShutdownContext` to `nsThread.h` so it can be used by `nsThreadPool`.

Differential Revision: https://phabricator.services.mozilla.com/D69657

--HG--
extra : moz-landing-system : lando
2020-04-07 22:10:29 +00:00
Marco Bonardo 7457a384f2 Bug 1496578 - convert nsDefaultURIFixup to URIFixup.jsm. r=Gijs,farre
Differential Revision: https://phabricator.services.mozilla.com/D66579

--HG--
extra : moz-landing-system : lando
2020-04-07 21:55:24 +00:00
Eric Rahm 3442b6f2d5 Bug 1627393 - Add missing includes and namespaces to xpcom/tests. r=xpcom-reviewers,sg
Differential Revision: https://phabricator.services.mozilla.com/D69659

--HG--
extra : moz-landing-system : lando
2020-04-07 19:10:57 +00:00
Eric Rahm 2bd348aaf4 Bug 1627390 - Add missing includes and namespaces to xpcom/io. r=xpcom-reviewers,sg
Differential Revision: https://phabricator.services.mozilla.com/D69656

--HG--
extra : moz-landing-system : lando
2020-04-07 19:09:47 +00:00
Andreas Farre 25ca8d7890 Bug 1620594 - Part 7: Remove TabGroup and SystemGroup. r=nika,bas
TabGroup never really made any difference in which thread something go
dispatched to. This was the intended use, but development of TabGroups
with abstract main threads never made it that far. The good thing is
that thish makes it safe to also remove to the SystemGroup and instead
switch all SystemGroup dispatches to dispatches to main thread.

Timers for setTimeout and workers were the sole users of wrapped and
throttled event targets, that those throttled queues have been moved
to the BrowsingContextGroup and are now accessed explicitly.

The SchedulerEventTarget has been removed, since there are no longer a
separate event target for every TaskCategory. Instead a
LabellingEventTarget has been added to DocGroup to handle the case
where an event is dispatched do DocGroup or when an AbstractThread is
created using a DocGroup. This means that we'll actually label more
events correctly with the DocGroup that they belong to.

DocGroups have also been moved to BrowsingContextGroup.

Depends on D67636

Differential Revision: https://phabricator.services.mozilla.com/D65936

--HG--
extra : moz-landing-system : lando
2020-04-07 15:17:47 +00:00
Andreas Farre f2fa2e633c Bug 1620594 - Part 5: Use GetMainThreadSerialEventTarget instead of SystemGroup::EventTargetFor. r=nika
This patch also tries to remove the event target entirely if it would
default to the main thread on a null event target.

Depends on D67634

Differential Revision: https://phabricator.services.mozilla.com/D67635

--HG--
extra : moz-landing-system : lando
2020-04-07 15:17:07 +00:00
Andreas Farre 9e36af2ab6 Bug 1620594 - Part 3: Use default target for timers using SystemGroup. r=nika
Depends on D67632

Differential Revision: https://phabricator.services.mozilla.com/D67633

--HG--
extra : moz-landing-system : lando
2020-04-07 15:16:46 +00:00
Andreas Farre 36eaf82163 Bug 1620594 - Part 2: Use SchedulerGroup::Dispatch instead of SystemGroup::Dispatch. r=nika
Depends on D67631

Differential Revision: https://phabricator.services.mozilla.com/D67632

--HG--
extra : moz-landing-system : lando
2020-04-07 15:16:33 +00:00
Andreas Farre 63e21eec70 Bug 1620594 - Part 1: Rework NS_ReleaseOnMainThreadSystemGroup. r=nika
To be able to remove SystemGroup, NS_ReleaseOnMainThreadSystemGroup
needs to have its dependency on SystemGroup removed. Since all
releases using SystemGroup would've released on the main thread anyway
we can safely replace NS_ReleaseOnMainThreadSystemGroup with
NS_ReleaseOnMainThread.

Depends on D64390

Differential Revision: https://phabricator.services.mozilla.com/D67631

--HG--
extra : moz-landing-system : lando
2020-04-07 15:16:23 +00:00
Dave Townsend 2bdbc2936b Bug 1621116: Make the version and build ID of the previous instance of Firefox to use the current profile available. r=froydnj,glandium
We cache this information in compatibility.ini so we can just expose it on
nsIXULRuntime.

Differential Revision: https://phabricator.services.mozilla.com/D66112

--HG--
extra : moz-landing-system : lando
2020-04-07 08:23:32 +00:00
Eric Rahm 8b6c75d28a Bug 1627389 - Add missing using statements to xpcom/ds. r=xpcom-reviewers,KrisWright
Differential Revision: https://phabricator.services.mozilla.com/D69655

--HG--
extra : moz-landing-system : lando
2020-04-06 22:35:20 +00:00
Cosmin Sabou 84ff986617 Merge mozilla-central to autoland. CLOSED TREE 2020-04-07 00:59:27 +03:00
Ciure Andrei 7de40f8ed0 Merge autoland to mozilla-central. a=merge 2020-04-07 00:46:53 +03:00
Mozilla Releng Treescript a17ce3b6b4 Update configs. IGNORE BROKEN CHANGESETS CLOSED TREE NO BUG a=release ba=release 2020-04-06 14:28:50 +00:00