Commit Graph

1420 Commits

Author SHA1 Message Date
Thomas Zimmermann
750a662e60 Bug 836523 - Wait for incoming connections in UnixSocketImpl. r=qdot, r=echou
The UnixSocketImpl currently polls the socket file descriptor while
listening for incoming connections and schedules itself to run again
if no connection requests have been received.

This behavior interferes with closing the socket and deleting the
socket structure in the main thread. It can happen that the I/O thread
dispatches a SocketAcceptTask to poll the listening socket and the
main thread dispatches a DeleteInstanceRunnable for the UnixSocketImpl,
such that the delete operation gets dispatched before the poll
operation. The latter then operates on the just deleted UnixSocketImpl.

With this patch, the I/O thread watches the listing socket for incoming
connection requests and only attempts to run accept when connection
requests are pending. This allows to serialize polling and close
operations within the I/O thread in a sound order.

A side effect of this patch is that we don't constantly run code for
polling the listing socket, which should result in less CPU overhead
and save battery power.
2013-02-12 09:16:45 -05:00
Thomas Zimmermann
03b6064933 Bug 836523 - Protect mCurrentTaskIsCanceled by lock. r=qdot, r=echou
The main thread and the I/O thread concurrently access the field
mCurrentTaskIsCanceled in UnixSocketImpl. Protect it by a lock.
2013-02-12 09:16:45 -05:00
Trevor Saunders
887555e996 bug 834552 - remove a bunch of ipc/chromium/ that we don't even build r=bsmedberg 2013-01-22 11:55:07 -05:00
Jeff Walden
149649e256 Bug 826009 - Move locale callback info, default locale, etc. data and APIs to be JSRuntime-centered. f=bholley, r=jorendorff
--HG--
extra : rebase_source : 35317f4c29e9dd70e7d4fd1292027cfd51ce2675
2013-02-07 18:04:11 -08:00
Ryan VanderMeulen
dc75c6b11c Backed out changeset 1646e649878a (bug 835698) for causing bug 839256. 2013-02-11 17:38:41 -05:00
Honza Bambas
c57af113b5 Bug 822490 - Radically simplify windows TimeStamp implementation, r=tellrob 2013-02-11 22:56:58 +01:00
Ben Turner
b66d3a5418 Bug 835698 - 'Pre-open() and send the fd for app process's application.zip'. r=jduell. 2013-02-09 17:59:47 +00:00
Ed Morley
5c728f13b8 Backout 1646e649878a (bug 835698) on suspicion of causing mochitest-1 shutdown hangs on Windows on a rather sad looking CLOSED TREE 2013-02-11 15:41:36 +00:00
Ben Turner
8c08a3ad5e Bug 835698 - 'Pre-open() and send the fd for app process's application.zip'. r=jduell. 2013-02-09 17:59:47 +00:00
Jason Duell
a8d9b74416 Backed out changeset 1a2e34c9ebc7 (bug 835698) a=bustage_from_bug_839688 2013-02-08 17:18:28 -08:00
Ben Turner
7555d5addc Bug 835698 - 'Pre-open() and send the fd for app process's application.zip'. r=jduell. 2013-02-01 04:23:23 -08:00
Phil Ringnalda
4263f1a634 Back out 4b47185f48f8 (bug 835698) for Win debug crashes in test_jarchannel_e10s.js 2013-02-06 22:23:33 -08:00
ben turner
61b0a67172 Bug 835698 - Pre-open() and send the fd for app process's application.zip r=jduell 2013-02-06 05:18:00 -08:00
Daniel Holbert
0144abe74b Bug 838840: Mark ipc/unixsocket as FAIL_ON_WARNINGS. r=qDot 2013-02-06 16:39:36 -08:00
Daniel Holbert
f81c5f3831 Bug 838756: Fix out-of-order init list for UnixSocketImpl constructor. r=qDot 2013-02-06 12:44:04 -08:00
Vicamo Yang
3466647544 Bug 814579: connect client socket by id. r=qDot 2013-02-04 21:26:43 +08:00
Vicamo Yang
51a511f9e8 Bug 826931 (follow-up): fix build break. r=me
1. include netdb.h for |gethostbyname|.
2. link mozipcunixsocket_s whenever MOZ_B2G_RIL is enabled.
2013-02-04 18:56:12 +08:00
Daniel Holbert
eda9093722 back out 9a7369b9bc9d (bug 814579) for B2G Arm opt Mn & X orange 2013-02-02 00:01:25 -08:00
Vicamo Yang
39f4987f66 Bug 814579: connect client socket by id. r=qDot 2013-02-02 13:06:27 +08:00
Vicamo Yang
41b0dba505 Bug 826931 - Part 3/3: use mozilla::ipc::UnixSocket. r=qDot 2013-02-01 20:28:22 +08:00
Vicamo Yang
ff9ad278f4 Bug 826931 - Part 2/3: UnixSocket - allow delayed connection. r=qDot 2013-02-01 20:28:18 +08:00
Vicamo Yang
20050ee452 Bug 826931 - Part 1/3: UnixSocket - allow ownership take-over in ReceiveSocketData(). r=qDot,echou 2013-02-01 20:28:15 +08:00
Jeff Walden
f902f1c921 Bug 836438 - Refactor IPC::ParamTraits specializations so that we don't have to manually guard against the possibility of multiple parameter types being the same type. r=ehsan
--HG--
extra : rebase_source : 9a3b8c13f9999cbdae025e87688bd6e95fef75f5
2013-01-31 14:08:16 -08:00
Eric Chou
21f9faaf65 Bug 836107 - Initialize mTask, a member variable of UnixSocketImpl, with nullptr, r=qdot 2013-01-31 22:43:45 +08:00
Benoit Jacob
1d6f2e71ed Bug 835920 - UnixSocket and Ril mis-interpret read() returning 0 as failure and enter infinite reconnect loop - r=kyle.machulis 2013-01-30 15:13:10 -05:00
Ben Turner
36ffa7ef80 Bug 834526, r=cjones. 2013-01-24 17:25:01 -08:00
Ben Turner
65692dc256 Bug 831307 - Allow invalid file handles to not crash child processes. r=cjones. 2013-01-24 17:10:39 -08:00
Jan Beich
1448d0b859 Bug 832723 - Unbreak build on BSDs after bug 786631. r=cjones 2013-01-25 10:10:12 -05:00
Ben Turner
65a5f51bd7 Bug 831307, add additional logging. r=cjones. 2013-01-23 15:57:05 -08:00
Ehsan Akhgari
e47aedf1a1 Bug 833359 - Disable PGO on ipc; r=bsmedberg a=me 2013-01-22 11:07:14 -05:00
Nicholas Nethercote
0293b60b78 Bug 394311 - Stop building with -pedantic. r=ted,dbaron.
--HG--
rename : content/svg/content/nsISVGPoint.cpp => content/svg/content/src/DOMSVGPoint.cpp
rename : docshell/test/browser/browser_bug234628-9.js => docshell/test/browser/browser_bug134911.js
rename : layout/reftests/w3c-css/submitted/values3/calc-background-image-gradient-1-ref.html => layout/reftests/css-calc/background-image-gradient-1-ref.html
rename : layout/reftests/w3c-css/submitted/values3/calc-background-image-gradient-1.html => layout/reftests/css-calc/background-image-gradient-1.html
rename : layout/reftests/w3c-css/submitted/values3/reftest.list => layout/reftests/css-calc/reftest.list
rename : layout/reftests/text/auto-hyphenation-10-ref.html => layout/reftests/text/auto-hyphenation-10.html
rename : layout/reftests/text/auto-hyphenation-8-ref.html => layout/reftests/text/auto-hyphenation-8.html
rename : layout/reftests/text/auto-hyphenation-9-ref.html => layout/reftests/text/auto-hyphenation-9.html
extra : rebase_source : 012df725d55b031ccc03d9bfcf785056d95a2ebe
2013-01-20 14:12:42 -08:00
Steve Fink
d3f194fbfb Bug 828753 - jsid rooting, mostly in jsinfer.*. Also switch JSObject from struct to class. r=terrence 2012-12-31 12:40:21 -08:00
Steve Fink
cb8aecdd2a Backed out changeset fce4e0f8a553 (bug 828753) for breaking windows warnings-as-errors (stop adding JSObject forward decls, please!) 2013-01-18 13:20:21 -08:00
Steve Fink
fa3e8f224b Bug 828753 - jsid rooting, mostly in jsinfer.*. Also switch JSObject from struct to class. r=terrence
--HG--
extra : rebase_source : c8806b27677594925ad0e6b54c47af5cf17e1153
2012-12-31 12:40:21 -08:00
Chris Jones
8c7bb72c30 Bug 786631, part 2: Make the prelaunch process totipotent and specialize when it's taken. r=jlebar 2013-01-17 12:06:36 -08:00
Chris Jones
61289b3aab Bug 786631, part 1: Refactor privilege adjustment. r=dhylands 2013-01-17 12:06:36 -08:00
Seth Fowler
0bff99cf5a Bug 824817 - Eliminate warnings in IPC code. r=cjones 2013-01-16 14:42:14 -08:00
Chris Jones
7dba6ead7f Back out bug 786631 2013-01-17 12:50:13 -08:00
Chris Jones
86389a1b2d Back out bug 786631 2013-01-17 12:49:56 -08:00
Chris Jones
9a2fcc5586 Back out bug 786631 2013-01-17 12:49:42 -08:00
Chris Jones
4a4b706f9d Bustage fix for bug 786631: Need a win no-op too. r=me 2013-01-17 12:46:05 -08:00
Chris Jones
7714922ecc Bug 786631, part 2: Make the prelaunch process totipotent and specialize when it's taken. r=jlebar 2013-01-17 12:06:36 -08:00
Chris Jones
527e7a3767 Bug 786631, part 1: Refactor privilege adjustment. r=dhylands 2013-01-17 12:06:36 -08:00
Charles Chan
d4616f491f Bug 710989 - Fix possible memset underflow in Time::Explode(). r=cjones 2012-03-23 21:24:07 -07:00
Chris Jones
7ff10228b2 Bug 831307: Log breakpoint-level IPC errors always. r=dougt,jdm,jst a=blocking-b2g 2013-01-16 19:47:21 -08:00
Thomas Zimmermann
dfe0efbdcd Bug 830704: Delete UnixSocketImpl instance after SocketReceiveTasks completed [r=qdot]
The Bluetooth system internally uses UnixSocketImpl when transfering
files. When Bluetooth gets disabled during a file transfer, the IPC code
deletes any related instance of UnixSocketImpl. This can happen before all
pending SocketReceiveTasks have been processed by the main thread. The
implementation of SocketReceiveTask uses a reference to the instance of
UnixSocketImpl that has just deen disabled. This results in a segmantation
fault.

This patch fixes the problem by scheduling the delete operation for
UnixSocketImpl to be executed after any pending SocketReceiveTasks.
2013-01-16 10:21:49 +08:00
Landry Breuil
7ec0733233 Bug 830303 - Fix plugin-container LD_LIBRARY_PATH on BSD (regression from 753046) r=cjones 2013-01-14 22:38:17 +01:00
Oleg Romashin
04f55a4a16 Bug 826979 - jsfriendapi.h conflict with qobjectdefs.h slots defines. r=glandium
--HG--
extra : rebase_source : d30852a09858b4f6d62fee627c0dc08ef765dcd8
2013-01-11 15:06:36 -08:00
Ben Turner
69b258a8eb Bug 827749 - Aggressively duplicate file handles. r=cjones. 2013-01-10 19:15:57 +01:00
Jared Wein
c84a618228 Backed out changeset 3aa492e39918 (bug 827749) for failing all tests OS X. 2013-01-10 14:15:25 -05:00
Ben Turner
0b31156561 Bug 827749 - Aggressively duplicate file handles. r=cjones. 2013-01-10 19:15:57 +01:00
Thomas Zimmermann
909ad70366 Bug 827888: Explicitly call notifier if DBUS call completes early [r=echou,qdot]
If a DBUS call completes before we can set the notifier function, the
call's response never gets handled. To workaround this problem, we now
call the notifier explicitly if the call completes this early.

It can still happen that the call's response gets lost, but this
workaround greatly improves the success rate for our problem of handling
errors during Bluetooth device pairing; from maybe 10% to 75%.
2013-01-10 07:55:43 -08:00
Ben Turner
b62e292113 Backout f3b6bc4b2590 (Bug 827749) for test failures. 2013-01-10 13:54:27 +01:00
Ben Turner
9c8ad1d617 Bug 827749 - Aggressively duplicate file descriptors. r=cjones. 2013-01-10 13:00:17 +01:00
Bas Schouten
555b920d9a Bug 827825: Make mOtherProcess the current process for single-process IPDL protocols. r=cjones 2013-01-09 18:42:58 +01:00
Chris Jones
f14cef526c Bug 828285: Run camera with lower privileges. r=dhylands a=overholt 2013-01-09 14:50:25 +01:00
Nathan Froyd
ed1429aa8e Bug 826439 - use floats instead of doubles for exponential histogram statistic calculations; r=vdjeric 2013-01-03 16:21:44 -05:00
Chris Jones
88af7ca5ea Bug 824224: Always log protocol errors. r=bent 2013-01-04 13:28:37 -08:00
Ed Morley
b38062798d Backout 6e391f971a13 (bug 826439) for xpcshell failures 2013-01-04 16:07:27 +00:00
Nathan Froyd
7ad242ea05 Bug 826439 - use floats instead of doubles for exponential histogram statistic calculations; r=vdjeric 2013-01-03 16:21:44 -05:00
Nathan Froyd
5322d560d2 Bug 819418 - part 1 - be more selective in exporting aggregate statistics; r=vdjeric 2012-12-07 14:02:39 -05:00
Chris Jones
fdd82cec60 Rollup of bug 821192: Ensure that content processes don't see an inconsistent app dir. r=bent,dhylands
Bug 821192, part 1: Fix the watchdog timeout code. r=dhylands
Bug 821192, part 2: Add an interface to join all live content processes. r=bent
Bug 821192, part 3: Join all subprocesses before restarting the main process, when we're e.g. about to apply an update. r=dhylands
2012-12-28 01:45:16 -08:00
Daniel Holbert
b0c7421ff1 Bug 824140: Fix out-of-order init-list in Netd.cpp. r=slee 2012-12-23 19:12:15 -08:00
Chris Jones
606e241654 Bug 823422: Make ipdl C++ unit tests compile again. r=jlebar 2012-12-20 11:54:00 -08:00
Landry Breuil
6fd8c8fc4e Bug 823240 - include sys/proc.h on OpenBSD to access P_TRACED flag, needed since r1.127 of sys/sysctl.h. r=cjones 2012-12-20 13:46:39 +01:00
Kyle Machulis
6480dccd69 Bug 811683 - Changed UnixSocketRawData to take variable sizes up to 64k, r=cjones 2012-12-20 18:36:55 +08:00
Chris Jones
21213283df Bug 822510: Add specific privilege levels for camera and video, and enable that for video. r=jlebar,kang 2012-12-19 23:41:08 -08:00
Justin Lebar
6a7846f7fc Bug 819791 - Part 9: Use explicit TArray copy constructors in IPDL generated code. r=cjones
This cset makes two nop changes to generated IPDL code.

1) Change an instance of

  InfallibleTArray<Foo> foo = InfallibleTArray<Foo>();

to

  InfallibleTArray<Foo> foo;

2) Change an instance of

  InfallibleTArray<Foo> foo = bar;

to

  InfallibleTArray<Foo> foo(bar);
2012-12-18 20:16:07 -05:00
Justin Lebar
9730efc78a Bug 819791 - Part 2: Don't use nsTArray allocators in IPCMessageUtils traits. r=cjones
The allocators will be restricted to non-public use in a later patch.
2012-12-18 20:16:06 -05:00
Justin Lebar
cde813acb5 Bug 819791 - Part 0: Deserialize fallibly in IPCMessageUtils.h. r=cjones
Comments in the code are asking for us to deserialize fallibly; it looks
like we just forgot to change this when we made nsTArray infallible.
2012-12-18 20:16:06 -05:00
Jim Mathies
b6214c309a Bug 820200 - Pass application directory to XRE_InitEmbedding2 in content process. r=bsmedberg 2012-12-18 10:24:42 -06:00
Chris Jones
73161cb293 Bug 820560: Run unprivileged processes with different uids when possible. r=kang a=blocking-basecamp 2012-12-17 15:39:34 -08:00
Jeff Walden
e0523203c9 Bug 820570 - Move mozilla::DebugOnly into DebugOnly.h to pare down the grab-baggish Util.h. r=Ms2ger 2012-12-14 18:58:45 -05:00
Thomas Zimmermann
e28e2a4d68 Bug 817730: Abort connect if rilproxy is not ready [r=kyle]
When rilproxy is not ready for accepting connections, b2g might block
forever on connect. By setting the socket to non-blocking mode, connect
will fail and the task will return into the queue for later retry.

We see this problem on the PandaBoard, where no RIL is available and
rilproxy gets blocked by continuously failing to connect to rild. A
second fix should also go into rilproxy.

--HG--
extra : rebase_source : 25617875c9cb12e1259c0f1439aaf5d7c778619c
2012-12-11 14:56:36 +01:00
Andrew Halberstadt
04eda3fcf0 Bug 817122 - Disable failing B2G xpcshell tests, enable debugger tests, r=mdas 2012-12-12 16:17:49 -05:00
Nathan Froyd
861bd308d3 Bug 819418 - part 0 - Histogram::SampleSet:Add needs to transfer all values, not just sum_; r=vdjeric 2012-12-07 14:52:19 -05:00
Nathan Froyd
bc55710800 Bug 816166 - part 1 - record extra information on raw data collected in histograms; r=vdjeric 2012-11-30 15:49:49 -05:00
Ms2ger
98621c6b91 Bug 810668 - Fix some gcc4.6 build warnings; r=bz 2012-12-02 09:54:55 +01:00
Daniel Holbert
70aa09ef0e Bug 816888: Remove unused variable 'script' from XPCShellEnvironment.cpp. r=terrence 2012-11-30 09:59:01 -08:00
Chris Lord
30136b7c25 Bug 783368 - Add critical display port content property. r=roc
Add a property to represent a sub-rectangle of the display port that is
considered 'critical' to render correctly.
2012-11-21 22:34:18 +00:00
Ehsan Akhgari
a1ca146c7c Backed out 11 changesets (bug 783368) because of build bustage on a CLOSED TREE
Backed out changeset 2bc4310263c4 (bug 783368)
Backed out changeset a35c83a8d99d (bug 783368)
Backed out changeset afb9b2a661ba (bug 783368)
Backed out changeset 3926f510f9be (bug 783368)
Backed out changeset 9d1fe200ff87 (bug 783368)
Backed out changeset b6e4f88f5730 (bug 783368)
Backed out changeset bc53f7dba7c6 (bug 783368)
Backed out changeset 1948fa2fccc1 (bug 783368)
Backed out changeset 9af163388fd1 (bug 783368)
Backed out changeset 7a2256e1aa7c (bug 783368)
Backed out changeset 4da1958a9885 (bug 783368)
2012-11-21 14:57:02 -05:00
Chris Lord
9a58cff763 Bug 783368 - Add critical display port content property. r=roc
Add a property to represent a sub-rectangle of the display port that is
considered 'critical' to render correctly.
2012-11-21 19:16:51 +00:00
Vincent Chang
25a1d76669 Bug 810581 - Uninitialised value use in InitRndisAddress. r=jseward 2012-11-19 11:32:55 +08:00
Nicholas Nethercote
060f9c47ea Bug 811596 - Shrink the IPC message buffer after each message is processed. r=cjones. 2012-11-19 20:52:44 -08:00
Nathan Froyd
9e76256265 Bug 810332 - don't include <iostream> in ipc code where it's not necessary; r=cjones 2012-11-09 11:07:09 -05:00
Kartikaya Gupta
999bcbda5f Bug 808875 - Fix unused variable warning in file_util_posix.cc. r=mwu 2012-11-14 09:36:12 -08:00
Nathan Froyd
29167d1fe5 Bug 811419 - fix accumulation of the zero bucket in flag histograms; r=taras 2012-11-13 14:55:02 -05:00
Ben Turner
3b47df6d3a Bug 808743 - ' Better protection for PBrowser shutdown and database invalidation in multiprocess scenarios'. r=khuey+cjones.
--HG--
extra : transplant_source : %BD%E4%ADA%09%CE%D9%BE%1C%7C%7B%1A%FC%86%5C%13%24%29%B4%16
2012-11-09 19:29:07 -08:00
Nathan Froyd
3e87e9a863 Backout fe44be80d09f (bug 810332) for Windows build bustage 2012-11-09 21:21:22 -05:00
Nathan Froyd
807fe0935c Bug 810332 - don't include <iostream> in ipc code where it's not necessary; r=cjones 2012-11-09 11:07:09 -05:00
Terrence Cole
d3648d3506 Bug 805080 - Move more API users to CompileOptions; r=luke
There is no reason to have special methods for specific sets of CompileOptions
when the JS::Compile interface is so easy to use.  Other API methods can be
moved internal or removed entirely with this change.

--HG--
extra : rebase_source : f48fb221ebe02c0137e521ea605953532808825d
2012-11-06 17:36:47 -08:00
Steven Lee
b0aa31a99b Bug 805478 - NetdClient and VolumeManager inherit MessageLoopForIO::LineWatcher. r=dhylands 2012-11-08 14:35:02 -05:00
Steven Lee
f896852097 Bug 805478 - Implement MessageLoopForIO::LineWatcher. r=dhylands 2012-11-08 14:35:02 -05:00
34b0250f2c Bug 804511 - Use WT_EXECUTEDEFAULT instead of WT_EXECUTEWAITINTHREAD to avoid deadlocks while debugging. r=bent 2012-10-24 08:19:00 -04:00
bb8432ec40 Bug 804592 - "CreatePipe from Chromium IPC requires Logon Session, fails otherwise" [r=jones.chris.g] 2012-10-24 08:11:00 -04:00
Jonas Sicking
05fe127cc1 Bug 806587: Restore getCodebasePrincipal since extensions use it. r=mounir 2012-10-30 22:24:41 +01:00
Terrence Cole
e78fa7d5a1 Bug 805080 - Remove unused CESU8 support from SpiderMonkey; r=luke
We have many CESU8 paths in SpiderMonkey which are completely unused and
untested. We have many more "UTF-8" paths which are really mislabled CESU8 paths
and visa-versa. This patch attempts to disentable all of the various encoding
options in SpiderMonkey.
2012-10-29 13:55:17 -07:00
Bobby Holley
b8b176e756 Bug 797206 - Remove GetPrincipalFromContext. r=bz 2012-10-29 15:55:36 +01:00
Gina Yeh
5295f99641 Bug 804436 - Patch 1 : Add listening status to UnixSocket, r=gyeh 2012-10-26 17:28:34 +08:00
Ehsan Akhgari
78b2656cbc Backed out 2 changesets (bug 579517)
Backed out changeset 5298adc70963
Backed out changeset 86ccf7c918ce (bug 579517)
2012-10-25 12:32:24 -04:00