Commit Graph

420 Commits

Author SHA1 Message Date
Chris Jones
b34f76e214 Bug 540111, part 3: Allow IPDL actors to be managed by one of a set of possible managers. r=bent 2010-01-26 22:56:12 -06:00
Chris Jones
fc07cb5be2 Bug 540111, part 2: Subsume direct calls to manager->Dealloc*() into RemoveManagee(). r=bent 2010-01-26 22:56:11 -06:00
Chris Jones
95a3f6dcff Bug 540111, part 1: Add a new IProtocolManager::RemoveManagee interface to break reliance on the |Manager()| interface. r=bent 2010-01-26 22:56:09 -06:00
Chris Jones
07003cf347 Final merge of debug-spew backout 2010-01-26 20:09:07 -06:00
Chris Jones
6a65c0d728 Backout 8d0ad9632fd2 2010-01-26 20:09:04 -06:00
Chris Jones
a8ac13cd85 Intermediate merge of debug-spew backout 2010-01-26 20:08:59 -06:00
Chris Jones
b42dd35ca1 Backout f861b6e0a364 2010-01-26 20:08:56 -06:00
Chris Jones
d6f00817b0 Intermediate merge of debug-spew backout 2010-01-26 20:08:52 -06:00
Chris Jones
4bbf603adf Backout b0fee4f9b8c7 2010-01-26 20:08:48 -06:00
Chris Jones
fe90ea5e99 Intermediate merge of debug-spew backout 2010-01-26 20:08:44 -06:00
Chris Jones
e12332b1d9 Backout 76bf173816e8 2010-01-26 20:08:41 -06:00
Chris Jones
a8f0455da5 Intermediate merge of debug-spew backout 2010-01-26 20:08:38 -06:00
Chris Jones
adf3681d02 Backout d87a958aab73 2010-01-26 20:08:35 -06:00
Chris Jones
85a8c4c641 Intermediate merge of debug-spew backout 2010-01-26 20:08:31 -06:00
Chris Jones
5ff8ade5f8 Backout 581822324d75 2010-01-26 20:08:28 -06:00
Chris Jones
fb901ce79e Intermediate merge of debug-spew backout 2010-01-26 20:08:25 -06:00
Chris Jones
833e7c87fc Backout 23ee84dbd7b5 2010-01-26 20:08:22 -06:00
Chris Jones
8a6a2fbd64 IPC socketpair()s should be CLOEXEC (dup2() unsets the flag for the new fd in the child process). irc-r=bsmedberg 2010-01-26 18:13:43 -06:00
Chris Jones
7df4c01b33 Yet more temporary debug spew for diagnosing mochitest hang. 2010-01-26 14:57:16 -06:00
Chris Jones
abf4355d51 Temporary mochitest debugging: eliminate race condition between parent exit and child minidump request. 2010-01-26 09:40:42 -08:00
Benjamin Smedberg
fff188953b Bug 535564 - automation.py: WindowsError: [Error 13] The process cannot access the file because it is being used by another process. Don't keep the PID log open all the time, but only open it when it is needed. r?griffin
--HG--
extra : rebase_source : 1072e20feb1db8a98f99de5617e416ca23efb511
2010-01-26 09:53:32 -05:00
Chris Jones
382bd97b0b More temporary mochitest hang diagnostics: kill the plugin process with SIGSEGV if it doesn't shut down within 30 seconds. 2010-01-25 18:49:02 -06:00
Chris Jones
e03c1f3854 More temporary debug spew to sort linux mochitest hang. 2010-01-25 14:10:12 -06:00
Benjamin Smedberg
10c46ca526 Printf-debugging to help figure out bug 535564 2010-01-25 14:33:50 -05:00
Chris Jones
bd0804d7d6 More debug spew for sorting mochitest-plain hang. 2010-01-22 18:03:38 -06:00
Chris Jones
db57f114be Temporary spew part 2: convert fprintf(stderr into printf( so that child output shows up in the log. 2010-01-22 15:31:56 -06:00
Chris Jones
7b53db6a22 Temporary debug spew for diagnosing Linux mochitest hang. 2010-01-22 12:53:18 -06:00
Benjamin Smedberg
ad605908e9 Bug 540967 - "missing output line for total leaks" because the parent process isn't waiting for the child process to clean up/write leak logs, r=cjones 2010-01-22 10:21:33 -05:00
Benjamin Smedberg
5ff7ecd852 Bug 540868 part 2: keep all NPObjects (not just those with actors) in mObjectMap, and invalidate/deallocate them when we destroy the associated instance, r=bent 2010-01-22 10:06:13 -05:00
Chris Jones
73a1d2211e Bug 521929, part 3: IPDL/C++ test. 2010-01-21 20:04:11 -06:00
Chris Jones
b79dc7dd3a Bug 521929, part 2: Save racy RPC replies onto a special stack until they're the reply to the right out-call. r=bent 2010-01-21 20:04:10 -06:00
Chris Jones
5f451f4f10 Bug 521929, part 1: Add a "seqno" field to synchronous messages. r=bent 2010-01-21 20:04:09 -06:00
Chris Jones
7ebeb43400 Fix Windows build busted by 2e3e142612b1. 2010-01-20 22:58:47 -06:00
Chris Jones
d42c00e1e9 Bug 538239: Guard against async messages unblocking sync message waits. r=bent 2010-01-20 21:50:36 -06:00
Chris Jones
e3c60ac47d Test for bug 538239. 2010-01-20 21:50:07 -06:00
Oleg Romashin
959dec8b52 Bug 534644 - e10s: implement Qt ipc/chromium backend, part 2. r=benjamin. 2010-01-29 08:50:44 +02:00
Chris Jones
1bbb5af93c bug 539552 - Add a GetMinidump() method to top-level, parent-side IPDL classes. r=bent 2010-01-13 20:17:00 -05:00
Chris Jones
f396226bc4 Followup to bug 539856: Save actors' IDs in all message handlers to avoid use-after-free when the actor is deleted above the handler in the stack. IRC r=bent 2010-01-15 15:15:52 -06:00
Chris Jones
f8cdcf7276 Test for followup to bug 539856. 2010-01-15 15:15:51 -06:00
Ben Turner
f2dc67e621 Bug 539061 - 'OOPP: ASSERTION: Received "nonqueued" message 31, 10'. r=jimm. 2010-01-15 12:35:53 -08:00
Chris Jones
fc41cdff9a Bug 539856: Avoid use-after-free of |mId| when constructing replies to destructor messages by saving |mId| on the stack. no r=, minor 2010-01-14 23:25:57 -06:00
Chris Jones
bd40e8fa28 Test for bug 539856. 2010-01-14 23:25:56 -06:00
Benjamin Smedberg
3f9c685874 Merge mozilla-central into electrolysis 2010-01-14 09:01:59 -05:00
Chris Jones
8cce034b88 Bug 539343: Call DeallocSubtree() on subprotocol actors after being __delete__-ed. r=bent 2010-01-13 21:08:36 -06:00
Chris Jones
d4d55d3e9b Test for bug 539343. 2010-01-13 21:08:35 -06:00
Chris Jones
6adcb662be Bug 539295: Use lenient child reaping in NS_BUILD_REFCNT_LOGGING builds. r=bsmedberg 2010-01-13 14:57:52 -06:00
Chris Jones
1e041371ce Bug 539295: Add an extra EnsureProcessTerminated() parameter to control how lenient to be wrt child shutdown. r=bent 2010-01-13 14:57:51 -06:00
Benjamin Smedberg
59e6e48206 Followup to bug 516759 (multi-process crash reporting), make childCrashNotificationPipe a leaked char* instead of a leaked nsString, so that it doesn't show up in leakstats. r=ted (Filed bug 539451 as a followup.) 2010-01-13 10:44:10 -05:00
Chris Jones
f604a6add1 Bustage fix: work around XRE hackery. 2010-01-12 17:42:58 -06:00
Chris Jones
7ebf798a09 Bug 516759: Use OOP crash reporting in Gecko. r=luser 2010-01-12 15:14:38 -06:00
Chris Jones
e3edb3da51 Small edit to comment. No r=, just want another set of talos runs. 2010-01-12 02:25:18 -06:00
Chris Jones
c63eb826e4 Bug 538586: Notify clients of channel errors if they call Close() before deleting themselves, but before the error notification event is delivered from the IO thread. r=bent 2010-01-12 00:14:32 -06:00
Chris Jones
4773f70f01 Test for bug 538586. 2010-01-12 00:14:31 -06:00
Chris Jones
8fdbf47035 Don't run TestLatency if the timing resolution is too low and use the new TimeDuration::ToSecondsSigDigits() method to display durations to humans. No r=, test only. 2010-01-11 23:46:17 -06:00
Jim Mathies
395d6723a9 Bug 538990 - Add a resource manifest to mozilla-runtime.exe. r=ted. 2010-01-13 19:44:34 -06:00
Benjamin Smedberg
c85b1e45a9 Merge mozilla-central to electrolysis 2009-12-21 10:22:07 -05:00
Makoto Kato
f0c8759e67 Bug 534813 - ipc_message_utils.h causes build error on Windows x64 build. r=jones.chris.g 2009-12-21 18:28:28 +09:00
Chris Jones
d6c43ac3f9 bug 535867: fix threadsafety problem causing windows tinderbox error. r=trivial 2009-12-18 18:09:56 -06:00
Benjamin Smedberg
5cb66dd785 Bug 535298: Cancel the NotifyMaybeChannelError event if the AsyncChannel is destroyed, and allow AsyncChannel::Close() to be called after a channel error (e.g. child process crash). r=cjones 2009-12-17 18:12:03 -06:00
Chris Jones
4b8c5aece2 bug 535298: IPDL unit test for use-after-free crashes after RPC errors. r=test-only 2009-12-17 18:12:01 -06:00
Benjamin Smedberg
15b231055d Bug 534736, and perhaps some others: parent crash within mozilla::plugins::PPluginInstanceParent::DestroySubtree, r=cjones 2009-12-17 16:39:22 -05:00
Chris Jones
e3e1f8b5c7 fix syntax error. r=trivial 2009-12-15 16:15:39 -06:00
Chris Jones
aadcbce897 bug 533507: improve IPC "race condition" error message. frontend only, r=me 2009-12-09 20:01:46 -06:00
Chris Jones
92ab770bfe bug 533587: process RPC in-calls deferred because of races until "later". in-person r=bent 2009-12-09 17:15:01 -06:00
Chris Jones
cf23f7f8bd add missing makefile dep. r=trivial 2009-12-09 14:53:52 -06:00
Chris Jones
7a4072a311 bug 532973: add a check-valgrind target that runs IPDL unit tests under valgrind. r=luser 2009-12-07 01:10:52 -06:00
Chris Jones
7a70d6f9c4 bug 533034: fix race condition that led to use-after-free. thanks valgrind! 2009-12-07 00:04:00 -06:00
Chris Jones
6e91459a40 bug 532983: fix invalid memory reads caused by regressions in shutdown behavior. r=bsmedberg 2009-12-07 00:03:49 -06:00
Chris Jones
ba122c592e fix some leaks found by valgrind. r=trivial 2009-12-04 18:15:44 -06:00
Chris Jones
8ba8e5aaab bug 521949: make valgrind stop complaining about a false-positive uninitialized memory read 2009-12-04 16:45:23 -06:00
Chris Jones
0b9d5b4132 Fix MSVC warning 2009-12-04 16:27:59 -06:00
Chris Jones
ef2a387ab8 bug 523175: follow-up to 82549dbf71d8, fully enables the C++/IPDL side of Shmem and adds unit tests. r=bent 2009-12-04 12:45:21 -06:00
Chris Jones
96d13f9099 bug 523174: add a higher-level Shmem class that implements exclusive access rights between parent/child actors and does over/underflow checking. (Also adds a stop-gap lower-level SharedMemory class in lieu of bug 523172.) r=joedrew 2009-12-04 12:45:15 -06:00
Benjamin Smedberg
f29a8b92d2 Bug 532659 - PluginScriptableObjectParent gets double-deleted when the plugin crashes, and fix the IPDL bug where we delete the actor if construction fails, instead of calling Deallocate on it, r=bent
--HG--
extra : rebase_source : dbe9a100735b1e0d0a8b07f4421e1ccb6055a78a
2009-12-03 15:30:05 -05:00
Chris Jones
4572a1920a bug 529005: detect child process shutdowns vs. crashes, and expose this information to IPDL actors in a new |ActorDestroy(why)| interface. also ensure that subprotocol actors are notified of shutdown and cleaned up properly. r=bsmedberg r=bent 2009-12-03 02:16:28 -06:00
Chris Jones
36fa3e883c bug 521272: add C++ interfaces allowing IPDL manager actors to iterate over managees. r=trivial 2009-12-03 02:16:21 -06:00
Chris Jones
4a0c6ae1dc bug 525342: make IPDL dtors part of the destructed actor's protocol instead of the manager's. r=bsmedberg 2009-12-03 02:16:14 -06:00
Chris Jones
2898ebbb12 bug 525172: from IPDL specs generate .cpp files with method definitions instead of everything in .h files. r=bsmedberg 2009-12-03 02:16:09 -06:00
Chris Jones
5a85bd72bf bug 525483: simple check for IPDL actor use-after-free. also refactors some error handling code 2009-12-03 02:16:03 -06:00
Chris Jones
f2a7be3825 bug 524220: add a |nullable| type qualifier denoting whether C++ actor params are allowed to be NULL. r=bent 2009-12-03 00:35:22 -06:00
Chris Jones
f2e02884ba bug 523175: preliminary front-end-only support for shmem. r=bent 2009-12-03 00:35:15 -06:00
Chris Jones
de00c8390a bug 532333: part 2: implement an alternate EnsureChildTerminated() that listens for SIGCHLD (with a timeout) on the IO thread, instead of spawning a cleanup thread 2009-12-02 21:09:47 -06:00
Chris Jones
e89e8adc89 bug 532333: part 1: expose libevent signal events through chromium wrappers 2009-12-02 21:09:24 -06:00
Ben Turner
43fec0c5cf Add WM_MOUSEACTIVATE to list of deferred messages 2009-12-02 18:51:29 -08:00
Ben Turner
4c2c017389 Add WM_CAPTURECHANGED to the list of delayed messages. 2009-12-01 15:09:33 -08:00
Ben Turner
374d518bff Bug 531821 - Add chromium LICENSE file. 2009-12-01 14:18:27 -08:00
Benjamin Smedberg
f8977ad2f0 Bug 528367 - generate ipdl_{lex,yacc}tab.py in the objdir, not the srcdir 2009-11-24 10:34:38 -05:00
Ben Turner
fe230a0d56 Fix PostDelayedTask in the message loop 2009-11-23 16:01:12 -05:00
Benjamin Smedberg
593c06cd8c Do full shutdown, instead of _exit(0) shutdown in the plugin process when we're doing leak checking. 2009-11-20 13:49:15 -05:00
Chris Jones
efb828a947 include some headers missing in newer gcc/libc builds. r=trivial 2009-11-19 20:08:39 -06:00
Benjamin Smedberg
a5964bd8b9 Followup to bug 525090 - log new processes to a file based on the environment, instead of unconditionally to stdout, r=cjones 2009-11-19 14:52:11 -05:00
Chris Jones
27e7412d40 bug 529234: make sure to cleanup child processes 2009-11-19 13:03:30 -06:00
Ben Turner
fcac19872d Bug 526361 - 'Defer nonqueued messages received during synchronous IPC calls'. r=jimm+rs. 2009-11-18 15:18:08 -08:00
Josh Matthews
2414bcabb4 Bug 517963 - New-tab opening should not launch the content process synchronously r=cjones 2009-11-18 16:43:53 -05:00
Ben Turner
b579e4a306 Bug 528144 - 'Missing IPC messages cause hang during xpcshell test' 2009-11-17 15:34:48 -08:00
Chris Jones
ca75161694 add nsresult to IPDL builtins 2009-11-16 14:52:47 -06:00
Ben Turner
4aecc03b4f Bug 528144 - 'Missing IPC messages cause hang during xpcshell test' 2009-11-13 15:35:33 -08:00
Ben Turner
6a8386c605 Fix bustage 2009-11-12 14:46:29 -08:00
Chris Jones
64b9366a4d no need to include in C++ protocol-common headers |include protocol|'d from IPDL. this is an accident of history 2009-11-12 16:20:20 -06:00
Ben Turner
cafe07f11b Bug 525792 - 'Fix leaks running mochitests'. 2009-11-12 14:16:54 -08:00