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

1897 Коммитов

Автор SHA1 Сообщение Дата
Emilio Cobos Álvarez 3c74cd4252 Bug 1599614 - Condvar::Notify/NotifyAll are not fallible. r=bzbarsky
Differential Revision: https://phabricator.services.mozilla.com/D54828

--HG--
extra : moz-landing-system : lando
2019-11-27 13:46:55 +00:00
Sylvestre Ledru 8d2f0d1b1f Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-11-26 14:35:02 +00:00
Boris Zbarsky 73fb775116 Bug 1597158 part 4. Stop unlocking the provided mutex in IdlePeriodState methods. r=smaug
The basic idea, suggested by Olli, is that we can try to get a runnable in
ThreadEventQueue::GetEvent, and if that does not produce anything unlock our
mutex, do whatever idle state updates we need to do, re-lock our mutex.  Then
always we need to try getting a runnable again, because a non-idle runnable
might have gotten queued while we had the lock unlocked.  So we can't sleep on
our mutex, in the mayWait case, unless we try to get a runnable again first.

My notes on the current (pre this patch) unlocking setup follow.
------------------------------------------------------------

There are four places where we currently unlock:

1) IdlePeriodState::GetIdleDeadlineInternal.  Needed only when !aIsPeek, to
RequestIdleToken, which can do IPC.  The only caller, via
GetDeadlineForIdleTask, is PrioritizedEventQueue::GetEvent and only when we
selected the idle or deferred queue.  We need this to set the proper deadline
on the idle event.  In the cases when this unlock happens we currently _never_
return an idle event, because if we got here that means that we do not have an
idle token.

2) IdlePeriodState::GetLocalIdleDeadline.  Needs to unlock to get the idle
period hint.  The can get called from GetIdleDeadlineInternal in _both_ cases:
peek and get.  The callstack for the get case is covered above.  The peek case
is called from PrioritizedEventQueue::HasReadyEvent which is called from
ThreadEventQueue::HasPendingEvent.

3) IdlePeriodState::SetPaused, because it sends an IPC message.  This is only
called from EnsureIsPaused, which is called from:
  - IdlePeriodState::GetIdleDeadlineInternal.  Only in the !aIsPeek case.
  - IdlePeriodState::RanOutOfTasks called from:
    - PrioritizedEventQueue::GetEvent if we fell into the idle case and our
      queues are empty.
    - PrioritizedEventQueue::DidRunEvent if we are empty.

4) IdlePeriodState::ClearIdleToken because it sends an IPC message.  This is
called from:
    - IdlePeriodState::RanOutOfTasks; see SetPaused.
    - IdlePeriodState::GetIdleDeadlineInternal like EnsureIsPaused.
    - IdlePeriodState::GetIdleToken if token is in the past.  This is only
      called from GetIdleDeadlineInternal, both cases.
    - IdlePeriodState::FlagNotIdle called from PrioritizedEventQueue::GetEvent
      if we find an event in a non-idle queue.

Or rewriting in terms of API entrypoints on IdlePeriodState that might need to
unlock:

* Anything to do with getting deadlines, whether we are peeking or getting.
  Basically, if we need an updated deadline we need to unlock.
* When we have detected we are completely out of tasks (idle or not) to run.
  Right now we do that when either we're asked for an event and don't have one
  or if we run an event and are empty after that (before unlocking!).  But the
  unlocking or not happens in nsThreadEventQueue::DidRunEvent, so separately
  from the getting of the event.  In particular, we are unlocked before we
  enter DidRunEvent, and unlock again before we return from it, so we can do
  whatever updates we want there.
* When we have detected that we have a non-idle event to run; this calls
  FlagNotIdle.

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

--HG--
extra : moz-landing-system : lando
2019-11-22 14:06:17 +00:00
Boris Zbarsky e2ef656e02 Bug 1597158 part 3. Expose whether there are any idle runnables on PrioritizedEventQueue. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D53629

--HG--
extra : moz-landing-system : lando
2019-11-22 14:06:29 +00:00
Boris Zbarsky b5c22f1dda Bug 1597158 part 2. Expose the IdlePeriodState of a PrioritizedEventQueue to its consumers. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D53628

--HG--
extra : moz-landing-system : lando
2019-11-22 14:05:30 +00:00
Boris Zbarsky 093002cffe Bug 1597158 part 1. Change the GetEvent signature on PrioritizedEventQueue to return whether we considered running idle runnables. r=smaug
The caller will need to know this to properly update idle state.

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

--HG--
extra : moz-landing-system : lando
2019-11-22 14:03:23 +00:00
Randell Jesup 6835880244 Bug 1597728: Make EventQueue support templatization for queue page size r=froydnj
Most event queues don't ever get many events queued at one time, but the
MainThread Input and Normal queues may.

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

--HG--
extra : moz-landing-system : lando
2019-11-21 03:47:19 +00:00
Randell Jesup ede385148e Bug 1597601: Make event Queues use the first buffer as a circular buffer r=froydnj
This should avoid freeing and reallocating the buffer every N events, and
make it simpler to use smaller buffers, especially for non-MainThread queues.

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

--HG--
extra : moz-landing-system : lando
2019-11-21 03:47:09 +00:00
Randell Jesup 64e6884811 Bug 1595707: don't record event submission times when the profiler isn't running r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D53910

--HG--
extra : moz-landing-system : lando
2019-11-21 03:46:59 +00:00
Boris Zbarsky 6fe40421c1 Bug 1597157. Remove unused mNextIdleDeadline bits. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D53626

--HG--
extra : moz-landing-system : lando
2019-11-18 17:05:30 +00:00
Randell Jesup 4be7858359 Bug 1572337: Make GetRunningEventDelay handle threadpools r=froydnj
Threadpools run an event that then runs other events, so we need to tweak
things for GetRunningEventDelay()

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

--HG--
extra : moz-landing-system : lando
2019-11-08 21:07:45 +00:00
Randell Jesup 6cc1163786 Bug 1572337: Monitor running event delays and start times r=froydnj
This lets us determine the time that an event has been running, and the time
that the event spent queued - which can be used to figure out 'jank' at the
time the event was queued. For PrioritizedEventQueues, only if such queuing
would delay an input event then the queuing delay is reported.

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

--HG--
extra : moz-landing-system : lando
2019-11-08 21:07:36 +00:00
Nathan Froyd bc5cca4b95 Bug 1594730 - fix silly bug for the background event target; r=KrisWright
The static analysis caught this for me in Bug 1593812, I was just to
dumb to actually apply this change prior to commit.

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

--HG--
extra : moz-landing-system : lando
2019-11-07 16:04:45 +00:00
Razvan Maries cb87085ec4 Backed out 3 changesets (bug 1572337) ford perma fails. CLOSED TREE
Backed out changeset 00da7156d3fa (bug 1572337)
Backed out changeset 4eda65e054d8 (bug 1572337)
Backed out changeset ea6d5b4b038b (bug 1572337)
2019-11-07 17:29:46 +02:00
Randell Jesup 95192d13e3 Bug 1572337: Make GetRunningEventDelay handle threadpools r=froydnj
Threadpools run an event that then runs other events, so we need to tweak
things for GetRunningEventDelay()

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

--HG--
extra : moz-landing-system : lando
2019-11-07 12:53:32 +00:00
Randell Jesup 10353eba91 Bug 1572337: Monitor running event delays and start times r=froydnj
This lets us determine the time that an event has been running, and the time
that the event spent queued - which can be used to figure out 'jank' at the
time the event was queued. For PrioritizedEventQueues, only if such queuing
would delay an input event then the queuing delay is reported.

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

--HG--
extra : moz-landing-system : lando
2019-11-07 12:53:28 +00:00
Nathan Froyd 1b72ad9705 Bug 1593812 - add I/O awareness for the background thread target; r=KrisWright
We need some way of differentiating "tasks that just consume CPU"
vs. "tasks that block on some external resource" like reading from a
socket or a file.  If we didn't have this, we'd either a) have a thread
pool sized for the number of CPUs where having all the threads blocked
on I/O--and therefore no new tasks are able to run--or b) have a thread
pool that tries to increase the number of working threads based on the
number of submitted tasks and winds up having too many tasks running
with not enough CPUs to run them on.

This flag enables us to theoretically get the best of both worlds: we
can set aside `~#CPUs` threads for CPU-intensive work, and
`$SOME_NUMBER` threads for I/O work.  The latter number can be adjusted
up if the I/O load on the system is particularly heavy.

The implementation strategy of this patch is to use two separate thread
pools for the two different kinds of work.  It's entirely possible that
we'll want to use a single thread pool to coordinate thread create
between the two kinds of work, or even migrate threads from one kind of
work to the other, but such improvements can be future work.  The focus
right now is providing the rest of Gecko with a common funnel to put
tasks into, and we can adjust what's at the end of the funnel at a later
point.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 18:33:25 +00:00
Nathan Froyd 892767cef9 Bug 1593802 - don't drop dispatch flags in TaskQueue's EventTargetWrapper; r=erahm
`TaskQueue` wraps an `nsIEventTarget` to provide "one runnable at a
time" execution policies regardless of the underlying implementation of
the wrapped `nsIEventTarget` (e.g. a thread pool).  `TaskQueue` also
provides a `nsISerialEventTarget` wrapper, `EventTargetWrapper`, around
itself (!) for consumers who want to continue to provide a more
XPCOM-ish API.

One would think that dispatching tasks to `EventTargetWrapper` with a
given set of flags would pass that set of flags through, unchanged, to
the underlying event target of the wrapped `TaskQueue`.

This pass-through is not the case.  `TaskQueue` supports a "tail
dispatch" mode of operation that is somewhat underdocumented.  Roughly,
tail dispatch to a `TaskQueue` says (with several other conditions) that
dispatched tasks are held separately and not passed through to the
underlying event target.  If a given `TaskQueue` supports tail dispatch
and the dispatcher also supports tail dispatch, any tasks dispatched to
said `TaskQueue` are silently converted to tail dispatched tasks.  Since
tail dispatched tasks can't meaningfully have flags associated with
them, the current implementation simply drops any passed flags on the floor.

These flags, however, might be meaningful, and we should attempt to
honor them in the cases we're not doing tail dispatch.  (And when we are
doing tail dispatch, we can verify that the requested flags are not
asking for peculiar things.)

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

--HG--
extra : moz-landing-system : lando
2019-11-05 16:59:30 +00:00
Nathan Froyd f64f04d6ef Bug 1593803 - rename NS_DispatchToBackgroundThread to NS_DispatchBackgroundTask; r=KrisWright
The current API name is bad: we want it to be read "some background
thread", but it could just as easily be read "a singular background
thread", which would lead people to assume that for:

```
NS_DispatchToBackgroundThread(...);
NS_DispatchToBackgroundThread(...);
```

the dispatched tasks will necessarily run in the order they are
dispatched, which is not the case.

Let's try to head off that interpretation by renaming this function.

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

--HG--
extra : moz-landing-system : lando
2019-11-05 21:19:18 +00:00
Gerald Squelart 3b6a065df5 Bug 1592496 - nsProxyRelease.h clean-up - r=froydnj
Small changes:
- Ordered #includes.
- Fixed some comments (obsolete remarks, or typos).
- Set `nsMainThreadPtrHolder::mRawPtr` from constructor initializers.
- Modernized `nsMainThreadPtrHolder` copy-prevention.
- Default-initialize `nsMainThreadPtrHolder` members, for extra safety.
- Made `nsMainThreadPtrHandle::get()` `const` (consistent with others).
- Moved nsMainThreadPtrHandle private member to the end.
- Removed now-unused `mozilla::PtrHolder` and `mozilla::PtrHandle` aliases.

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

--HG--
extra : moz-landing-system : lando
2019-10-30 20:33:47 +00:00
Gerald Squelart 86d527a38c Bug 1592496 - Add move constructor and assignment to nsMainThreadPtrHandle - r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D51055

--HG--
extra : moz-landing-system : lando
2019-10-30 20:33:31 +00:00
Boris Zbarsky 3ae961a2da Bug 1589561. Factor out idle handling from PrioritizedEventQueue. r=smaug
We could try to move the EnforcePendingTaskGuarantee() bit into
PeekIdleDeadline, but then we'd need to check HasReadyEvent() on
mDeferredTimersQueue and mIdleQueue before we possibly unlock the mutex under
PeekIdleDeadline, and it's not clear that that state cannot change once the
mutex is unlocked...

The EnsureIsActive() call at the end of GetIdleDeadlineInternal in the !aIsPeek
case only makes sense if there are in fact idle tasks available to run when
GetDeadlineForIdleTask is called, because otherwise it would incorrectly set us
active when we are not running any tasks.

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

--HG--
rename : xpcom/threads/PrioritizedEventQueue.cpp => xpcom/threads/IdlePeriodState.cpp
rename : xpcom/threads/PrioritizedEventQueue.h => xpcom/threads/IdlePeriodState.h
extra : moz-landing-system : lando
2019-10-20 15:08:44 +00:00
Cosmin Sabou 68c31e0e43 Backed out changeset 798bab343a0a (bug 1589561) for turning bug 1586420 into permafail. CLOSED TREE
--HG--
extra : amend_source : 1c548e9a10e27ff6a50d98f15a701dcd1c717544
2019-10-18 23:04:26 +03:00
Boris Zbarsky 4a394c3f69 Bug 1589561. Factor out idle handling from PrioritizedEventQueue. r=smaug
We could try to move the EnforcePendingTaskGuarantee() bit into PeekIdleDeadline, but
then we'd need to check HasReadyEvent() on mDeferredTimersQueue and mIdleQueue
before we unlock the mutex and PeekIdleDeadline, and it's not clear that that
state cannot change once the mutex is unlocked...

The EnsureIsActive() call at the end of GetIdleDeadlineInternal in the !aIsPeek
case only makes sense if there are in fact idle tasks available to run when
GetDeadlineForIdleTask is called, because otherwise it would incorrectly set us
active when we are not running any tasks.

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

--HG--
rename : xpcom/threads/PrioritizedEventQueue.cpp => xpcom/threads/IdlePeriodState.cpp
rename : xpcom/threads/PrioritizedEventQueue.h => xpcom/threads/IdlePeriodState.h
extra : moz-landing-system : lando
2019-10-18 17:28:50 +00:00
Olli Pettay 80527a72bf Bug 1589345 - Fix a leftover comment to tell what PrioritizedEventQueue::mActive actually does, r=farre
EnsureIsActive is called in two places, one is for non-idle tasks, the other for idle tasks
https://searchfox.org/mozilla-central/rev/97976753a21c1731e18177de9e5ce78ea3b3da2d/xpcom/threads/PrioritizedEventQueue.cpp#212-214,286,288,303

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

--HG--
extra : moz-landing-system : lando
2019-10-18 10:35:47 +00:00
Sylvestre Ledru f12b9fa5c3 Bug 1519636 - Reformat recent changes to the Google coding style r=Ehsan
# ignore-this-changeset

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

--HG--
extra : moz-landing-system : lando
2019-10-06 18:29:55 +00:00
Gabriele Svelto 3e93e048a8 Bug 1584969 - Use nsMaybeWeakPtr to simplify the nsIProcess implementation r=kmag
Differential Revision: https://phabricator.services.mozilla.com/D47601

--HG--
extra : moz-landing-system : lando
2019-09-30 18:28:31 +00:00
Dorel Luca fd7b19e2eb Backed out changeset 9364cff86a7e (bug 1584568) by dev's request
--HG--
extra : rebase_source : 2e7ac1ee673380994328df1d6436235895d5b5e3
2019-09-27 23:54:11 +03:00
Nathan Froyd e284917829 Bug 1584568 - add a way to get the background event target; r=KrisWright
This function is needed for people whose needs don't map cleanly to
`NS_DispatchToBackgroundThread`, usually because they're using the event
target to do thread consistency checks.  Once we have this function, we
can start converting singleton threads/thread pools that want to use
functionality like the above.

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

--HG--
extra : moz-landing-system : lando
2019-09-27 17:16:40 +00:00
Nathan Froyd 580e41da6a Bug 1584339 - move background event target logic into a separate class; r=KrisWright
Eventually, we're going to want to hand out an `nsIEventTarget*` to people
wanting to dispatch to background threads, but for whatever reason not
wanting to use the `NS_DispatchToBackgroundThread` API (probably because
they want to verify correctness by checking that certain methods are, in
fact, running on the background event target).  And because we're going to
want to have some sort of division between CPU-bound and IO-bound tasks, we
can't just hand out references to a single thread pool.  We need some sort
of intermediate object for both of these goals, and that is what the added
`BackgroundEventTarget` class is.

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

--HG--
extra : moz-landing-system : lando
2019-09-27 15:30:34 +00:00
Brian Hackett 7a471baa7e Bug 1483398 - Disable idle scheduler when recording/replaying, r=smaug.
Differential Revision: https://phabricator.services.mozilla.com/D47257

--HG--
extra : moz-landing-system : lando
2019-09-26 20:20:11 +00:00
Nathan Froyd 5a3128b973 Bug 1583964 - make `IsOnCurrentThread` for thread pools constant-time; r=KrisWright
It's fairly common for clients to hold a pointer to some private thread
and then inquire about `IsOnCurrentThread` in debug checks.  As we
migrate these private threads into some `nsIEventTarget` implementation
that might be running on thread pools, we need to ensure that those
`IsOnCurrentThread` continues to be relatively cheap.  The current
implementation for thread pools is not particularly efficient.

The inefficiency comes from having to iterate over all the threads in
the pool.  But there's no need to do this; we can just have each thread
set a particular thread-local variable to the thread pool it's running
on, and check the value of that thread-local variable instead.

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

--HG--
extra : moz-landing-system : lando
2019-09-25 22:02:08 +00:00
Josh Aas ec1207f341 Bug 1450059 - part 1 - add a NS_DispatchToBackgroundThread function; r=KrisWright
We have a number of people starting up singleton threads for the sole
purpose of running a single runnable on them.  These consumers often
leave the thread running until some point close to shutdown, or they
never shut it down at all.  Let's add a helper function to do the thing
they actually want to do, and then we can modify the implementation of
that function as necessary as we merge singleton threads (and even
thread pools) together.

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

--HG--
extra : moz-landing-system : lando
2019-09-25 04:03:28 +00:00
Mihai Alexandru Michis 4e1448e7e6 Backed out 2 changesets (bug 1510226) for causing xpcshell crashes and xpcshell failures in test_TelemetrySession.js CLOSED TREE
Backed out changeset cb739de6606d (bug 1510226)
Backed out changeset b6f670610dc3 (bug 1510226)
2019-09-25 04:25:07 +03:00
Doug Thayer ecdf4c1ca3 Bug 1510226 - Do not block main thread in nsThread::Init r=froydnj
To remove the blocking inside nsThread::Init, two things needed
to happen:

- Switch the ThreadInitData value passed as the argument for
  ThreadFunc to a heap allocation, so that it can outlive the call
  to nsThread::Init.
- Initialize mThread and mEventTarget->mThread to the return
  value of PR_CreateThread, so that to the callers, checks which
  depend on these values being set can continue to function.

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

--HG--
extra : moz-landing-system : lando
2019-09-23 21:07:04 +00:00
Doug Thayer 65be2b22c1 Bug 1510226 - Remove vestigial references to cooperative scheduling r=froydnj
GetCurrentPhysicalThread and GetCurrentVirtualThread are, in practice,
identical, as the TLS override that GetCurrentVirtualThread depends on
is never actually set. This simply removes that and renames some things/
deletes some comments.

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

--HG--
extra : moz-landing-system : lando
2019-08-20 18:03:11 +00:00
Olli Pettay 1d1349d4bf Bug 1563063 - Cross-process idle handling, r=farre
This is to get initial feedback/review.
PIdleScheduler.ipdl has the documentation about the basic architecture.
(v15)

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

--HG--
extra : moz-landing-system : lando
2019-09-24 14:33:57 +00:00
Jean-Yves Avenard 912b0df630 Bug 1575744 - P4. Add MozPromise::FromDomPromise. r=bholley
Similar to MozPromise::FromGeckoResult.

Allows to create a MozPromise that will be resolved/rejected when the JS promise does the same.
It would be nice to be able to chain the two promise types, but it would be an additional effort.
MozPromise::FromDomPromise is limited to primitive types only and the reject value type must be nsresult.

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

--HG--
extra : moz-landing-system : lando
2019-09-20 04:09:46 +00:00
arthur.iakab a595388e84 Backed out changeset 5ed078313a10 (bug 1563063)for causing browser-chrome failures on browser_test_feature_preferencereads.js a=backout 2019-09-21 16:36:09 +03:00
Olli Pettay a1f7c1bbdf Bug 1563063 - Cross-process idle handling, r=farre
This is to get initial feedback/review.
PIdleScheduler.ipdl has the documentation about the basic architecture.
(v15)

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

--HG--
extra : moz-landing-system : lando
2019-09-20 19:31:58 +00:00
Bogdan Tara bee28f01d7 Backed out 8 changesets (bug 1575744) for HttpChannelParent related assertion failures
Backed out changeset af61675dd488 (bug 1575744)
Backed out changeset bf794b9373c8 (bug 1575744)
Backed out changeset 39ffb74d2e12 (bug 1575744)
Backed out changeset c1547b3df672 (bug 1575744)
Backed out changeset 382ee8672027 (bug 1575744)
Backed out changeset 5abb38484f11 (bug 1575744)
Backed out changeset d5244c1bbfe8 (bug 1575744)
Backed out changeset c74b81debf73 (bug 1575744)

--HG--
rename : netwerk/base/nsIProcessSwitchRequestor.idl => netwerk/base/nsICrossProcessSwitchChannel.idl
2019-09-20 06:58:44 +03:00
Jean-Yves Avenard bafae6af97 Bug 1575744 - P4. Add MozPromise::FromDomPromise. r=bholley
Similar to MozPromise::FromGeckoResult.

Allows to create a MozPromise that will be resolved/rejected when the JS promise does the same.
It would be nice to be able to chain the two promise types, but it would be an additional effort.
MozPromise::FromDomPromise is limited to primitive types only and the reject value type must be nsresult.

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

--HG--
extra : moz-landing-system : lando
2019-09-20 02:21:12 +00:00
Bogdan Tara 7e0aba7d00 Backed out changeset b0c0887e223c (bug 1563063) for browser_test_feature_preferencereads and browser_test_profile_multi_frame_page_info failures CLOSED TREE 2019-09-19 23:18:06 +03:00
Olli Pettay bcf140f437 Bug 1563063 - Cross-process idle handling, r=farre
This is to get initial feedback/review.
PIdleScheduler.ipdl has the documentation about the basic architecture.
(v15)

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

--HG--
extra : moz-landing-system : lando
2019-09-18 23:53:42 +00:00
Chris H-C 457b8d15c8 Bug 1577937 - StaticDataMutex for when you want a DataMutex but Static r=froydnj
Differential Revision: https://phabricator.services.mozilla.com/D45558

--HG--
extra : moz-landing-system : lando
2019-09-12 19:58:01 +00:00
Tom Ritter be6c896158 Bug 1575974 - Report any non-zero exit code as a process failure in nsIProcess r=gsvelto
EXIT_FAILURE is 'implementation defined' but can be defined to be 1.
In our case, pingsender exits with EXIT_FAILURE but nsIProcess wasn't
reporting it as failure because it thought failures were always negative.

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

--HG--
extra : moz-landing-system : lando
2019-09-11 04:40:11 +00:00
Razvan Maries b7da3be2b0 Backed out 3 changesets (bug 1575974) for xpcshell perma fails on test_nsIProcess.js. CLOSED TREE
Backed out changeset e32925d2b886 (bug 1575974)
Backed out changeset a9512bb19ea7 (bug 1575974)
Backed out changeset 521655c73cd1 (bug 1575974)
2019-09-11 00:23:26 +03:00
Tom Ritter c925942e2d Bug 1575974 - Report any non-zero exit code as a process failure in nsIProcess r=gsvelto
EXIT_FAILURE is 'implementation defined' but can be defined to be 1.
In our case, pingsender exits with EXIT_FAILURE but nsIProcess wasn't
reporting it as failure because it thought failures were always negative.

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

--HG--
extra : moz-landing-system : lando
2019-09-10 18:01:29 +00:00
Dorel Luca 17bf280715 Backed out 3 changesets (bug 1575974) for MinGW build bustage. CLOSED TREE
Backed out changeset cc4a00226229 (bug 1575974)
Backed out changeset 225d858fe335 (bug 1575974)
Backed out changeset 1dc0b5a41dc8 (bug 1575974)
2019-09-10 18:39:44 +03:00
Tom Ritter 323d7cb7e2 Bug 1575974 - Report any non-zero exit code as a process failure in nsIProcess r=gsvelto
EXIT_FAILURE is 'implementation defined' but can be defined to be 1.
In our case, pingsender exits with EXIT_FAILURE but nsIProcess wasn't
reporting it as failure because it thought failures were always negative.

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

--HG--
extra : moz-landing-system : lando
2019-09-10 10:44:10 +00:00