Commit Graph

239 Commits

Author SHA1 Message Date
Alexandre Lissy
b2834a3543 Bug 1284674 - Remove NUWA r=cyu
MozReview-Commit-ID: GyMRNzOBKw6
2016-08-02 14:54:00 +02:00
Haik Aftandilian
720f4f7470 Bug 1274540 - Record sandboxing status in crash reports; r=gcp
Adds content sandbox metadata to parent and child crash reports:
Includes the value of pref security.sandbox.content.level,
whether or not the system is capable of sandboxing, if the
sandbox was successfully turned on, and (on Linux systems)
the sandbox capabilities flags.

New crash report keys:
"ContentSandboxLevel" in parent and content
"ContentSandboxCapable" in parent
"ContentSandboxEnabled" in content
"ContentSandboxCapabilities" in content on Linux
2016-07-25 13:21:00 +02:00
Aaron Klotz
d6375a0a0f Bug 1285356: Fix blocklist initialization regressions; r=bsmedberg
MozReview-Commit-ID: AlWyzVhtPLL
2016-07-07 17:00:23 -06:00
Nicholas Nethercote
2e56b393d0 Bug 1285554 - Remove remnants of widget/qt. r=dougt,mshal.
Because bug 1282866 removed Qt support but missed a bunch of things.
* * *
Bug 1285554 - more
2016-07-12 09:16:45 +10:00
Julian Seward
39faa31be1 Bug 1279614 - 2,000 instances of "XPCOM objects created/destroyed from static ctor/dtor" emitted from xpcom/base/nsTraceRefcnt.cpp during linux64 debug testing. r=gfritzsche,jmathies. 2016-06-30 14:04:15 +02:00
Bill McCloskey
abfa535be4 Bug 1277705 - Remove chromium notification service (r=dvander) 2016-06-24 13:15:20 -07:00
David Anderson
effaa2762a Add skeletal code for launching a GPU process. (bug 1271180 part 4, r=billm,jrmuizel) 2016-06-10 22:27:24 -04:00
Phil Ringnalda
fb45b46515 Back out 5 changesets (bug 1271180) for static analysis bustage
CLOSED TREE

Backed out changeset cfb53b780b18 (bug 1271180)
Backed out changeset 204b084385f8 (bug 1271180)
Backed out changeset 353da876be33 (bug 1271180)
Backed out changeset 4472dfbc1dc6 (bug 1271180)
Backed out changeset 81079e787b8a (bug 1271180)
2016-06-11 00:46:09 -07:00
David Anderson
960e333e42 Add skeletal code for launching a GPU process. (bug 1271180 part 4, r=billm,jrmuizel) 2016-06-10 22:27:24 -04:00
Julian Seward
0e2d48e6dc Bug 1258183 - TSan: data race toolkit/components/telemetry/Telemetry.cpp in CanRecordBase (part 2, derace). r=chutten. 2016-06-08 17:46:24 +02:00
Haik Aftandilian
fe720c9597 Bug 1275430 - Add telemetry and logging to record content process failures to start; r=billm
MozReview-Commit-ID: LWeZbDBwfX5
2016-06-01 15:13:59 -07:00
Karl Tomlinson
7468cc8813 bug 1276086 set GLib prgname in child process r=glandium
MozReview-Commit-ID: 4Neb36zGScf
2016-05-27 11:50:26 +12:00
Nathan Froyd
8778929f8f Bug 1275548 - move OS X SharedMemoryBasic shutdown; r=billm
OS X shared memory is currently set up in XRE_InitChildProcess and torn
down in XRE_ShutdownChildProcess.  The current location of shared memory
shutdown is vulnerable to races from outstanding shared memory requests
from ImageBridge threads; if we request a new shared memory segment from
an image bridge thread after shared memory has been shutdown, we will
crash.

Despite its name, XRE_ShutdownChildProcess doesn't actually perform all
shutdown steps; it merely notifies the main run loop that it's OK to
exit, which eventually returns control to XRE_InitChildProcess.  Inside
XRE_InitChildProcess, then, is where cleanup of the content process
actually happens, and where shared memory shutdown needs to be.
2016-05-26 18:07:24 -04:00
L. David Baron
2045856d7a Bug 1274041 - Initialize jprof in child process. r=jesup
This makes a function call in XRE_InitChildProcess for the child process that
currently exists in XREMain::XRE_mainStartup for the parent process.

This allows signals that jprof uses to be sent to a child process to
profile that child process.

MozReview-Commit-ID: CeWnYl4LJyA
2016-05-20 19:57:31 -07:00
Bob Owen
f99b386a00 Bug 1035125 Part 8: Pass sandboxing pointers through XRE_InitChildProcess instead of linking to more functions in xul. r=aklotz,glandium
MozReview-Commit-ID: 5AiktOArpfU
2016-05-15 16:35:22 +01:00
Kyle Huey
b91ceaea75 Bug 1268313: Part 2 - Replace some NewRunnableMethods with NS_NewNonOwningRunnableMethod. r=froydnj 2016-05-05 01:44:59 -07:00
Carsten "Tomcat" Book
d10653e369 Backed out changeset fd833da413ad (bug 1268313) 2016-04-29 14:21:25 +02:00
Kyle Huey
b334682d78 Bug 1268313: Part 2 - Replace some NewRunnableMethods with NS_NewNonOwningRunnableMethod. r=froydnj 2016-04-28 14:08:24 -07:00
Kyle Huey
f3e34e67b3 Bug 1266595: Replace Chromium Task with Runnable. r=froydnj 2016-04-27 17:06:05 -07:00
Kyle Huey
a9cf047227 Bug 1265927: Move nsRunnable to mozilla::Runnable, CancelableRunnable to mozilla::CancelableRunnable. r=froydnj 2016-04-25 17:23:21 -07:00
Ryan VanderMeulen
baa1c8dce5 Bug 1259809 - Make CrashReporter::InitChildProcessTmpDir conditional on MOZ_CRASHREPORTER. r=aklotz 2016-03-25 12:51:00 -04:00
Aaron Klotz
c8a0d9ab7b Bug 1256541: Fix incorrect generation of path for child process .extra files when content sandboxing is disabled; r=bsmedberg
MozReview-Commit-ID: JQgqlntQ6cu
2016-03-16 12:35:50 -06:00
Wes Kocher
090bbab1db Backed out changeset 0827e0e5d9d4 (bug 1256541) for timeouts and crashes in browser_CTP_crashreporting.js
MozReview-Commit-ID: 704JC6wknXc
2016-03-24 13:04:48 -07:00
Aaron Klotz
b568d00e85 Bug 1256541: Fix incorrect generation of path for child process .extra files when content sandboxing is disabled; r=bsmedberg
Since the minidump path can be overridden programmatically in the chrome
process, using that path as the base for .extra files won't work since content
is unaware of it.

This patch changes everything to use the temp path when MOZ_CONTENT_SANDBOX is
not defined or when sandboxing is disabled via pref. It also moves the derivation
of the content temp path out of exception context on Windows and Mac, as I
found out that those functions touch the heap.

I also noticed that xpcshell is not sandbox-aware when utilized as a parent
process. I've filed bug 1257098 to take care of that, but this patch includes a
hack for the immediate term.

MozReview-Commit-ID: 3SIB5Nihqxh
2016-03-16 12:35:50 -06:00
Bob Owen
e1e79be6f1 Bug 1253850: On Windows change MOZ_DEBUG_CHILD_PROCESS back to JIT and add MOZ_DEBUG_CHILD_PAUSE for a 10 second pause. r=mchang 2016-03-07 17:08:15 +00:00
Bob Owen
c14d97b42b Bug 1252889: On Windows use a 10 second pause instead of trying to invoke the JIT debugger with MOZ_DEBUG_CHILD_PROCESS. r=jimm 2016-03-03 11:09:25 +00:00
Arthur Edelstein
fb34d0ff99 Bug 867501 - Pref allows JS locale to be set to US English/C. r=khuey 2015-12-29 13:56:00 +01:00
Nigel Babu
97d918dfb2 Backed out changeset b45ee8d3233f (bug 867501) for build bustage 2015-12-29 15:28:48 +05:30
Arthur Edelstein
9e6c3fe9f6 Bug 867501 - Pref allows JS locale to be set to US English/C. r=khuey 2015-12-17 16:15:00 +01:00
Eric Rahm
92936288bb Bug 1174785 - Part 1: Add LogModule, LogModuleManager, and LazyLogModule. r=froydnj
The logging interface is moved to xpcom/base, a LogModule wrapper for PR_Log is
added, a thread-safe LogModuleManager is added, and a LazyLogModule class used
to lazily load log modules in a thread-safe manner is added.
2015-10-19 12:22:11 -07:00
Nathan Froyd
4e6d8f6705 Bug 1207245 - part 6 - rename nsRefPtr<T> to RefPtr<T>; r=ehsan; a=Tomcat
The bulk of this commit was generated with a script, executed at the top
level of a typical source code checkout.  The only non-machine-generated
part was modifying MFBT's moz.build to reflect the new naming.

CLOSED TREE makes big refactorings like this a piece of cake.

 # The main substitution.
find . -name '*.cpp' -o -name '*.cc' -o -name '*.h' -o -name '*.mm' -o -name '*.idl'| \
    xargs perl -p -i -e '
 s/nsRefPtr\.h/RefPtr\.h/g; # handle includes
 s/nsRefPtr ?</RefPtr</g;   # handle declarations and variables
'

 # Handle a special friend declaration in gfx/layers/AtomicRefCountedWithFinalize.h.
perl -p -i -e 's/::nsRefPtr;/::RefPtr;/' gfx/layers/AtomicRefCountedWithFinalize.h

 # Handle nsRefPtr.h itself, a couple places that define constructors
 # from nsRefPtr, and code generators specially.  We do this here, rather
 # than indiscriminantly s/nsRefPtr/RefPtr/, because that would rename
 # things like nsRefPtrHashtable.
perl -p -i -e 's/nsRefPtr/RefPtr/g' \
     mfbt/nsRefPtr.h \
     xpcom/glue/nsCOMPtr.h \
     xpcom/base/OwningNonNull.h \
     ipc/ipdl/ipdl/lower.py \
     ipc/ipdl/ipdl/builtin.py \
     dom/bindings/Codegen.py \
     python/lldbutils/lldbutils/utils.py

 # In our indiscriminate substitution above, we renamed
 # nsRefPtrGetterAddRefs, the class behind getter_AddRefs.  Fix that up.
find . -name '*.cpp' -o -name '*.h' -o -name '*.idl' | \
    xargs perl -p -i -e 's/nsRefPtrGetterAddRefs/RefPtrGetterAddRefs/g'

if [ -d .git ]; then
    git mv mfbt/nsRefPtr.h mfbt/RefPtr.h
else
    hg mv mfbt/nsRefPtr.h mfbt/RefPtr.h
fi
2015-10-18 01:24:48 -04:00
Jim Mathies
dcd0d5a07e Bug 1080687 - Reduce system shutdown order of child processes so the chrome process shuts down first. r=gabor 2015-07-16 06:24:34 -05:00
Birunthan Mohanathas
a29151dc87 Bug 1182996 - Fix and add missing namespace comments. rs=ehsan
The bulk of this commit was generated by running:

  run-clang-tidy.py \
    -checks='-*,llvm-namespace-comment' \
    -header-filter=^/.../mozilla-central/.* \
    -fix
2015-07-13 08:25:42 -07:00
Mike Hommey
ca49d7244e Bug 833117 - Replace g_slice_set_config() with G_SLICE environment variable. r=nfroyd,r=karlt
Using g_slice_set_config() fails with newer glib because the slice allocator
now has a static constructor that runs when glib is loaded, consequently
emitting a noisy error message which confuses people into believing it's the
root of their problems.

The only way left to force the slice allocator to use "system" malloc (in
practice, jemalloc) is to set the G_SLICE environment variable to
always-malloc, and that needs to happen before glib is loaded.

Fortunately, the firefox and plugin-container executables don't depend on
glib. Unfortunately, webapprt does, so the problem remains for web apps
running through it. xpcshell and other executables that depend on libxul
directly (as opposed to loading it dynamically) are not covered either.
2015-07-10 09:56:05 +09:00
Brad Lassey
99e21866e1 bug 1161166 - Use mach shared memory for shared memory on OSX r=billm 2015-06-17 00:38:38 -04:00
Eric Rahm
ee07644116 Bug 1172138 - Call PR_LogInit before profiler_init. r=froydnj 2015-06-09 17:44:46 -07:00
Wes Kocher
2a932fffd8 Backed out changeset 1be05715932f (bug 1161166) 2015-06-09 15:12:21 -07:00
Brad Lassey
3aef53f002 Bug 1161166 - Use mach shared memory for shared memory on OSX. r=billm 2015-06-09 09:56:50 -04:00
Jim Mathies
55c963f75c Bug 1156857 - Properly init telemetry histogram data for child processes. r=bsmedberg 2015-05-27 12:59:13 -05:00
Ryan VanderMeulen
20d108240c Backed out changeset 41b2612eba71 (bug 1156857) for regressing bug 1100501. 2015-04-30 11:08:27 -04:00
Georg Fritzsche
ad9f9965f5 Bug 1156857 - Fix StatisticsRecorder not being initialized in content processes. r=jimm 2015-04-30 14:00:58 +02:00
Kartikaya Gupta
ebe4a3e37e Bug 1039866 - Rip out a bunch of metro-only code. r=jimm,gavin,rstrong 2015-04-23 15:10:30 -04:00
Bob Owen
7517f0b07d Bug 1119878 Part 2: Change IPC code to hold ProcessID instead of ProcessHandle. r=billm, r=dvander, r=aklotz, r=cpearce 2015-04-01 09:40:35 +01:00
Nicolas Silva
b149521604 Bug 1014355 - Init X with thread-safe mode in child processes. r=karlt 2015-03-30 13:30:36 +02:00
David Major
5373df94d2 Bug 1132663 - Part 1: Use the DLL blocklist in plugin-container processes. r=bsmedberg 2015-02-18 14:09:32 +13:00
Nicholas Nethercote
0247de46d8 Bug 1127201 (attempt 2, part 1) - Replace most NS_ABORT_IF_FALSE calls with MOZ_ASSERT. r=Waldo. 2015-02-09 14:34:50 -08:00
Andrew McCreight
e048a7df33 Back out Bug 1127201 (part 2) for various problems. 2015-02-06 15:04:32 -08:00
Nicholas Nethercote
40ab0270d5 Bug 1127201 (part 2) - Convert all NS_ABORT_IF_FALSE calls to MOZ_ASSERT. r=Waldo. 2015-02-04 20:05:36 -08:00
Chris Peterson
2e9f1cad00 Bug 1120312 - Fix -Wunused-variable warning in toolkit/xre and mark directory as FAIL_ON_WARNINGS. r=tlee 2015-01-07 19:35:19 -08:00
Jim Mathies
6c61f07913 Bug 1117140 - Avoid allocating some resources in the gmp child process which we have no use for. r=bsmedberg 2015-01-07 17:35:04 -06:00