Commit Graph

1374 Commits

Author SHA1 Message Date
Ben Turner
ea86a773f7 Bug 835698 - 'Pre-open() and send the fd for app process's application.zip'. r=jduell. 2013-02-15 14:27:21 -08:00
Nathan Froyd
2c74fde464 Bug 837271 - part 1 - add means to control computation of extended statistics to histogram code; r=vladan 2013-02-13 10:31:25 -05:00
Makoto Kato
eeac5d0163 Bug 834645 - move -STACK parameter to config.mk. r=ted 2013-02-14 15:22:00 +09:00
Thomas Zimmermann
1cb460ce39 Bug 836523 - Cleanup UnixSocketImpl from within I/O thread. r=qdot, r=echou
When closing a socket from within the main thread, we need to make
sure that the I/O thread does not operate on the related instance of
UnixSocketImpl.

With this patch, the main thread posts a SocketCloseTask to the I/O
thread. The SocketCloseTask removes the socket from the I/O thread's
list of watched file descriptors and dispatches an instance of
DeleteInstanceRunnable for the socket's UnixSocketImpl, which cleans
up the data structures. These steps serialize the close operation
within the I/O thread, and ensure that the main thread processed all
other dispatched runnables that may use the UnixSocketImpl.
2013-02-12 09:16:45 -05:00
Thomas Zimmermann
8c487c22fb 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
09dcc08dcd 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
c6acb62c6c 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
0e302a5094 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
49521be52f Backed out changeset 1646e649878a (bug 835698) for causing bug 839256. 2013-02-11 17:38:41 -05:00
Honza Bambas
b2f0520748 Bug 822490 - Radically simplify windows TimeStamp implementation, r=tellrob 2013-02-11 22:56:58 +01:00
Ben Turner
d44c4dc7ca 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
552bcabebf 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
624f6d9042 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
710d5e47dd Backed out changeset 1a2e34c9ebc7 (bug 835698) a=bustage_from_bug_839688 2013-02-08 17:18:28 -08:00
Ben Turner
456cb1e956 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
498d9f9e42 Back out 4b47185f48f8 (bug 835698) for Win debug crashes in test_jarchannel_e10s.js 2013-02-06 22:23:33 -08:00
ben turner
fd7fb68530 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
ac9204c34b Bug 838840: Mark ipc/unixsocket as FAIL_ON_WARNINGS. r=qDot 2013-02-06 16:39:36 -08:00
Daniel Holbert
fc6db00365 Bug 838756: Fix out-of-order init list for UnixSocketImpl constructor. r=qDot 2013-02-06 12:44:04 -08:00
Vicamo Yang
e42350fe92 Bug 814579: connect client socket by id. r=qDot 2013-02-04 21:26:43 +08:00
Vicamo Yang
963acffc9a 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
82d7882407 back out 9a7369b9bc9d (bug 814579) for B2G Arm opt Mn & X orange 2013-02-02 00:01:25 -08:00
Vicamo Yang
d4ab66dfd8 Bug 814579: connect client socket by id. r=qDot 2013-02-02 13:06:27 +08:00
Vicamo Yang
cbe6922238 Bug 826931 - Part 3/3: use mozilla::ipc::UnixSocket. r=qDot 2013-02-01 20:28:22 +08:00
Vicamo Yang
70b1a26645 Bug 826931 - Part 2/3: UnixSocket - allow delayed connection. r=qDot 2013-02-01 20:28:18 +08:00
Vicamo Yang
5075aba1fa 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
f28fd07803 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
edeba3d62e Bug 836107 - Initialize mTask, a member variable of UnixSocketImpl, with nullptr, r=qdot 2013-01-31 22:43:45 +08:00
Benoit Jacob
dbbdf24d8b 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
206f990359 Bug 834526, r=cjones. 2013-01-24 17:25:01 -08:00
Ben Turner
d7c5c23c6e Bug 831307 - Allow invalid file handles to not crash child processes. r=cjones. 2013-01-24 17:10:39 -08:00
Jan Beich
294b53d8bc Bug 832723 - Unbreak build on BSDs after bug 786631. r=cjones 2013-01-25 10:10:12 -05:00
Ben Turner
ab55383013 Bug 831307, add additional logging. r=cjones. 2013-01-23 15:57:05 -08:00
Ehsan Akhgari
1bfee16643 Bug 833359 - Disable PGO on ipc; r=bsmedberg a=me 2013-01-22 11:07:14 -05:00
Nicholas Nethercote
1d5169b3d1 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
57a2c2471b 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
380ecf9335 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
01f8a5b4d8 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
7af4883dee 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
1d378e6460 Bug 786631, part 1: Refactor privilege adjustment. r=dhylands 2013-01-17 12:06:36 -08:00
Seth Fowler
32816a86b5 Bug 824817 - Eliminate warnings in IPC code. r=cjones 2013-01-16 14:42:14 -08:00
Chris Jones
4dd045f41c Back out bug 786631 2013-01-17 12:50:13 -08:00
Chris Jones
7fd864daea Back out bug 786631 2013-01-17 12:49:56 -08:00
Chris Jones
027c95cfba Back out bug 786631 2013-01-17 12:49:42 -08:00
Chris Jones
06d3d2f740 Bustage fix for bug 786631: Need a win no-op too. r=me 2013-01-17 12:46:05 -08:00
Chris Jones
cbfb70742d 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
05dd861b40 Bug 786631, part 1: Refactor privilege adjustment. r=dhylands 2013-01-17 12:06:36 -08:00
Charles Chan
a9238e971c Bug 710989 - Fix possible memset underflow in Time::Explode(). r=cjones 2012-03-23 21:24:07 -07:00
Chris Jones
af29d559b0 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
4258a59432 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