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

525 Коммитов

Автор SHA1 Сообщение Дата
Chris Jones 414eab9b0b Bug 540886, part 1: Refactor "special message" dispatch in AsyncChannel. r=bent 2010-01-27 00:41:31 -06:00
Chris Jones ed86fcca84 Bug 540111, part 5: IPDL/C++ test of multi-managers. r=bnewman 2010-01-26 22:56:14 -06:00
Chris Jones 0bb819c7de Bug 540111, part 4: IPDL-only tests of multi-managers. 2010-01-26 22:56:13 -06:00
Chris Jones d30cfaf796 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 eefb2c4602 Bug 540111, part 2: Subsume direct calls to manager->Dealloc*() into RemoveManagee(). r=bent 2010-01-26 22:56:11 -06:00
Chris Jones 106e56b0fa 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 ad29b7c5fe Final merge of debug-spew backout 2010-01-26 20:09:07 -06:00
Chris Jones ddbf41fc69 Backout 8d0ad9632fd2 2010-01-26 20:09:04 -06:00
Chris Jones a5e7adee69 Intermediate merge of debug-spew backout 2010-01-26 20:08:59 -06:00
Chris Jones c8b686218a Backout f861b6e0a364 2010-01-26 20:08:56 -06:00
Chris Jones 037c9b9540 Intermediate merge of debug-spew backout 2010-01-26 20:08:52 -06:00
Chris Jones 69ec48faf6 Backout b0fee4f9b8c7 2010-01-26 20:08:48 -06:00
Chris Jones de6ba0babb Intermediate merge of debug-spew backout 2010-01-26 20:08:44 -06:00
Chris Jones 2a1eecdb0d Backout 76bf173816e8 2010-01-26 20:08:41 -06:00
Chris Jones b6dfa35aaf Intermediate merge of debug-spew backout 2010-01-26 20:08:38 -06:00
Chris Jones 9a2a126cb4 Backout d87a958aab73 2010-01-26 20:08:35 -06:00
Chris Jones ec5d3ab51e Intermediate merge of debug-spew backout 2010-01-26 20:08:31 -06:00
Chris Jones d10ea7de50 Backout 581822324d75 2010-01-26 20:08:28 -06:00
Chris Jones bf6d9ae756 Intermediate merge of debug-spew backout 2010-01-26 20:08:25 -06:00
Chris Jones 87dcf353fa Backout 23ee84dbd7b5 2010-01-26 20:08:22 -06:00
Chris Jones 502bd4a3d1 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 f0ccd87d70 Yet more temporary debug spew for diagnosing mochitest hang. 2010-01-26 14:57:16 -06:00
Chris Jones b61694e1b1 Temporary mochitest debugging: eliminate race condition between parent exit and child minidump request. 2010-01-26 09:40:42 -08:00
Benjamin Smedberg 7e7f0841a8 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 716e3b9b25 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 e6ff1d1ce5 More temporary debug spew to sort linux mochitest hang. 2010-01-25 14:10:12 -06:00
Benjamin Smedberg f160fbceec Printf-debugging to help figure out bug 535564 2010-01-25 14:33:50 -05:00
Chris Jones b66ebd0eff More debug spew for sorting mochitest-plain hang. 2010-01-22 18:03:38 -06:00
Chris Jones a8ab47bdd3 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 46aa3d99d0 Temporary debug spew for diagnosing Linux mochitest hang. 2010-01-22 12:53:18 -06:00
Benjamin Smedberg 0d419bb10f 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 33961f6fa7 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 ae46ec2d2f Bug 521929, part 3: IPDL/C++ test. 2010-01-21 20:04:11 -06:00
Chris Jones 06ca93f642 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 6fc1c48aa8 Bug 521929, part 1: Add a "seqno" field to synchronous messages. r=bent 2010-01-21 20:04:09 -06:00
Chris Jones 78decd9082 Fix Windows build busted by 2e3e142612b1. 2010-01-20 22:58:47 -06:00
Chris Jones 2fc3be4a48 Bug 538239: Guard against async messages unblocking sync message waits. r=bent 2010-01-20 21:50:36 -06:00
Chris Jones 1a58181162 Test for bug 538239. 2010-01-20 21:50:07 -06:00
Oleg Romashin 76f524a22a Bug 534644 - e10s: implement Qt ipc/chromium backend, part 2. r=benjamin. 2010-01-29 08:50:44 +02:00
Chris Jones 71d511c249 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 7450192aba 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 f13dc9d7ae Test for followup to bug 539856. 2010-01-15 15:15:51 -06:00
Ben Turner 3abbad40be Bug 539061 - 'OOPP: ASSERTION: Received "nonqueued" message 31, 10'. r=jimm. 2010-01-15 12:35:53 -08:00
Chris Jones 8d8174a707 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 6e33770c22 Test for bug 539856. 2010-01-14 23:25:56 -06:00
Benjamin Smedberg 1fa381537b Merge mozilla-central into electrolysis 2010-01-14 09:01:59 -05:00
Chris Jones 7db6c82f97 Bug 539343: Call DeallocSubtree() on subprotocol actors after being __delete__-ed. r=bent 2010-01-13 21:08:36 -06:00
Chris Jones 90128359d2 Test for bug 539343. 2010-01-13 21:08:35 -06:00
Chris Jones cc2c1b5d7d Bug 539295: Use lenient child reaping in NS_BUILD_REFCNT_LOGGING builds. r=bsmedberg 2010-01-13 14:57:52 -06:00
Chris Jones 7eab06e8bf 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 0f66af47c6 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 1995308d66 Bustage fix: work around XRE hackery. 2010-01-12 17:42:58 -06:00
Chris Jones 45bd1a653e Bug 516759: Use OOP crash reporting in Gecko. r=luser 2010-01-12 15:14:38 -06:00
Chris Jones 9885156426 Small edit to comment. No r=, just want another set of talos runs. 2010-01-12 02:25:18 -06:00
Chris Jones 41c198e6a2 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 27bd6ce0a6 Test for bug 538586. 2010-01-12 00:14:31 -06:00
Chris Jones 8fc8a76dfc 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 b75a54d089 Bug 538990 - Add a resource manifest to mozilla-runtime.exe. r=ted. 2010-01-13 19:44:34 -06:00
Benjamin Smedberg 19c038b0b2 Merge mozilla-central to electrolysis 2009-12-21 10:22:07 -05:00
Makoto Kato e2108386c2 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 cee892e114 bug 535867: fix threadsafety problem causing windows tinderbox error. r=trivial 2009-12-18 18:09:56 -06:00
Benjamin Smedberg 34e2e063d7 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 e8ba2c61e8 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 41eab18abf 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 5da2f562e0 fix syntax error. r=trivial 2009-12-15 16:15:39 -06:00
Chris Jones 36c3c3447d bug 533507: improve IPC "race condition" error message. frontend only, r=me 2009-12-09 20:01:46 -06:00
Chris Jones 8b16a35dc0 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 1db753bb3a add missing makefile dep. r=trivial 2009-12-09 14:53:52 -06:00
Chris Jones 8d5a2a2fae 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 f7ff8ffcef bug 533034: fix race condition that led to use-after-free. thanks valgrind! 2009-12-07 00:04:00 -06:00
Chris Jones 8e5648cbee bug 532983: fix invalid memory reads caused by regressions in shutdown behavior. r=bsmedberg 2009-12-07 00:03:49 -06:00
Chris Jones 35ac1f8cd2 fix some leaks found by valgrind. r=trivial 2009-12-04 18:15:44 -06:00
Chris Jones 8abc83ace0 bug 521949: make valgrind stop complaining about a false-positive uninitialized memory read 2009-12-04 16:45:23 -06:00
Chris Jones 2037e919a0 Fix MSVC warning 2009-12-04 16:27:59 -06:00
Chris Jones da33d06c2d 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 aea3243ee9 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 b695aba156 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 c47450d9a7 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 57d427c91a 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 270962252a 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 677d4b14f9 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 9bcd9f1ab6 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 16291938f9 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 e26b419666 bug 523175: preliminary front-end-only support for shmem. r=bent 2009-12-03 00:35:15 -06:00
Chris Jones e767ae72d1 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 f8b2e6c35f bug 532333: part 1: expose libevent signal events through chromium wrappers 2009-12-02 21:09:24 -06:00
Ben Turner 0469fa577a Add WM_MOUSEACTIVATE to list of deferred messages 2009-12-02 18:51:29 -08:00
Ben Turner 8f022ce032 Add WM_CAPTURECHANGED to the list of delayed messages. 2009-12-01 15:09:33 -08:00
Ben Turner f92346854c Bug 531821 - Add chromium LICENSE file. 2009-12-01 14:18:27 -08:00
Benjamin Smedberg f557f35c90 Bug 528367 - generate ipdl_{lex,yacc}tab.py in the objdir, not the srcdir 2009-11-24 10:34:38 -05:00
Ben Turner 221a1d753c Fix PostDelayedTask in the message loop 2009-11-23 16:01:12 -05:00
Benjamin Smedberg abbbc74bb1 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 37505766aa include some headers missing in newer gcc/libc builds. r=trivial 2009-11-19 20:08:39 -06:00
Benjamin Smedberg 49150adb6d 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 fa7b66ff5d bug 529234: make sure to cleanup child processes 2009-11-19 13:03:30 -06:00
Ben Turner 445ec72ed9 Bug 526361 - 'Defer nonqueued messages received during synchronous IPC calls'. r=jimm+rs. 2009-11-18 15:18:08 -08:00
Josh Matthews 9972edd9fb Bug 517963 - New-tab opening should not launch the content process synchronously r=cjones 2009-11-18 16:43:53 -05:00
Ben Turner ddc3652fe6 Bug 528144 - 'Missing IPC messages cause hang during xpcshell test' 2009-11-17 15:34:48 -08:00
Chris Jones ff28bbb2df add nsresult to IPDL builtins 2009-11-16 14:52:47 -06:00
Ben Turner 528fc497a1 Bug 528144 - 'Missing IPC messages cause hang during xpcshell test' 2009-11-13 15:35:33 -08:00
Ben Turner 8ee0dbf5a2 Fix bustage 2009-11-12 14:46:29 -08:00
Chris Jones 825bd599dd 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 82191b418a Bug 525792 - 'Fix leaks running mochitests'. 2009-11-12 14:16:54 -08:00
Chris Jones 4e75aa27a1 fix misplaced forward declarations of protocols 2009-11-11 15:07:58 -06:00
Chris Jones 548d6d261d bug 527871: fix shutdown assertion and leaking TestShellParent. still leaking ContentProcessParent's GeckoChildProcess, but needs discussion before fixing 2009-11-11 02:34:08 -06:00
Chris Jones 5c7a5ab290 mac builds and runs with --enable-ipc, but the subprocess nsAppShell dies for an apparently Cocoa-related reason. IPC is fine though 2009-11-10 20:25:10 -06:00
Chris Jones 96dc937bbb print actor names instead of protocol, regression 2009-11-10 18:02:44 -06:00
Chris Jones a5761b1f6d the protocol-tree-walk to determine friends was broken 2009-11-10 16:50:59 -06:00
Phineas T. Farnsworth 3da7352b78 bug 526626: band-aids for shutdown assertions 2009-11-09 16:56:55 -06:00
Benjamin Smedberg 84942520d3 Followup to last patch: using the ternary operator doesn't shortcut creating the temporary object, and I can't figure out why it was a ternary anyway: make it an if. 2009-11-09 12:57:32 -05:00
Benjamin Smedberg 71e4c2d085 Fix the chromium logging stuff: make CHECK/LOG release-and-debug (DCHECK/DLOG are debug-only), and make it print warning/error/abort using NS_DebugBreak, which is especially important for release aborts. 2009-11-09 12:03:48 -05:00
Chris Jones 872eb8137d build fix for gcc <= 4.2 2009-11-06 22:57:13 -06:00
Ben Turner e48ad70cc3 Bustage fix 2009-11-06 16:22:54 -08:00
Chris Jones 8b132d2a80 fix linux build 2009-11-06 17:51:04 -06:00
Chris Jones 5412e0bc87 fix build bustage and test SEGFAULTs 2009-11-06 17:07:52 -06:00
Ben Turner d10ccd2c5a Bug 522414 - 'RPC and Sync channels will deadlock easily on Windows'. r=jimm+rs. 2009-11-06 14:33:12 -08:00
Chris Jones d16b740eee bug 526990: add support for serializing |float|s. no r=, trivial 2009-11-06 14:24:35 -06:00
Benjamin Smedberg abde5a790a Followup to the previous patch: give arguments to CHECK also, to fix Maemo build bustage and be consistent. 2009-11-06 14:45:38 -05:00
Benjamin Smedberg b289c97b16 Bug 526868 - Drop the dependency on GLIBCXX_3.4.9 by hacking Chromium logging to use NSPR logging instead of ostream. Pending r+ from cjones, but I wanted to get this landed to see what it did to the Linux testerboxes. 2009-11-05 17:47:09 -05:00
Chris Jones 2eb8767355 bug 523894: wstrings are bad news in OPT builds due to chromium/Mozilla -fshort-wchar mismatch 2009-11-05 18:24:27 -06:00
Chris Jones 649b4bf497 bug 525677: shuffle some headers to appease gcc 4.2. IRC r=fred23,bsmedberg 2009-11-04 23:11:33 -06:00
Benjamin Smedberg b32ff65cda Update chromium code to newer versions (rev 23304) to avoid tr1/function which doesn't compile without RTTI on, and disable RTTI by default. 2009-11-04 15:46:27 -05:00
Chris Jones 4bb319dfc5 bug 526397: fix up command line init. no r=, minor 2009-11-03 23:12:18 -06:00
Chris Jones c916fbb575 bug 525792: fix leaking PluginModules, call NP_Shutdown() on plugins. minor, no r= 2009-11-03 15:37:07 -06:00
Jonathan Griffin b7375e8bd1 Bug 525090. Log the PID's of launched processes. r=cjones
--HG--
extra : rebase_source : 69365c5d2f3a96b21efdeea876389027fca6feb5
2009-11-02 14:41:46 -08:00
Chris Jones 6415e6908c don't allow TestLatency to run when MOZ_IPC_MESSAGE_LOG is set 2009-10-30 16:04:06 -05:00
Chris Jones 108fb1cc49 attempt to fix build 2009-10-29 12:50:28 -05:00
Chris Jones 36fe1f488d bug 525150: bring back MOZ_IPC_MESSAGE_LOG. no r=, logging code only 2009-10-29 10:46:42 -05:00
Chris Jones 8814c1fe6e bug 525169: remove superfluous test-harness. no r=, removing testing code only 2009-10-29 00:56:24 -05:00
Benjamin Smedberg 8051ceb908 Merge only plugin changes from e10s to mozilla-central. 2009-12-16 09:19:07 -05:00
Benjamin Smedberg c827f3a584 Electrolysis-plugin-only bookkeeping commit. 2009-12-15 20:33:05 -05:00
Chris Jones 713cc81033 build fix 2009-10-27 22:31:04 -05:00
Chris Jones ccfc1178e3 bug 523761: give top-level IPDL actors handles to each others' processes. r=bent 2009-10-27 16:52:37 -05:00
Chris Jones 8663feb8a0 bug 524767: add better error logging to *Channel. no r?, logging only 2009-10-27 16:32:55 -05:00
Ben Turner f78672f07d Don't let people get the order of includes wrong in this horrifying patchwork of chromium and mozilla types 2009-10-21 16:01:16 -07:00
Chris Jones a13cd9cde7 fix bug where EndRead() is called on an empty (unread) message 2009-10-21 14:48:49 -05:00
Chris Jones 57879814f0 bug 523272: allow protocols to reference great*grandchild actors 2009-10-19 21:12:25 -05:00
Chris Jones b581a2e474 bug 518914: make sure that Messages are fully deserialized. fix fencepost error in chromium code 2009-10-19 16:06:13 -05:00
Chris Jones 46ad34660e bug 523143: switch protocols using nsTArray to native IPDL arrays 2009-10-19 14:10:52 -05:00
Chris Jones 09a6250424 bug 521324: call the multi-threaded GLib initialization function. r=karlt 2009-10-19 11:28:42 -05:00
Chris Jones 03b1d7887b pre-emptive windows build fix. no hablas STDint 2009-10-16 19:33:19 -05:00
Chris Jones 9570ba4cbb bug 506171: rewrite lower.py and add native IPDL arrays. 2009-10-16 18:31:53 -05:00
Chris Jones 277c870ffe temporarily un-apply some lower.py fixes that have been subsumed by bug 506171 2009-10-16 18:27:43 -05:00
Chris Jones 8635fae956 fix bugs that were preventing IPDL C++ unit tests from running on win32 2009-10-13 23:08:24 -05:00
Chris Jones 11da116187 add basic IPC latency tests 2009-10-13 17:36:28 -05:00
Chris Jones 6221ca6529 bug 521845: expand protocol space by 4x (temporarily) 2009-10-12 14:04:40 -05:00
Chris Jones a0cb461b15 fix bugs in RPC race resolution 2009-10-09 01:21:39 -05:00
Chris Jones f71ad44292 hack around lack of C99 format specifiers on Windows 2009-10-08 18:07:24 -05:00
Chris Jones b71724eb06 followup to RPC race resolution --- convert RPC_DEBUGABORT into RPC_ASSERT, and pre-emptively fix potential spurious race detector alarms 2009-10-08 17:41:18 -05:00
Chris Jones bb2747448d add racy RPC resolution. also add better debugging info and fix two shared-memory-race bugs. 2009-10-08 16:44:43 -05:00