summaryrefslogtreecommitdiffstats
path: root/chrome/browser/nacl_host
Commit message (Collapse)AuthorAgeFilesLines
...
* Deinline even more destructors.erg@google.com2010-12-142-1/+5
| | | | | | | | | BUG=none TEST=compiles Review URL: http://codereview.chromium.org/5794003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69084 0039d316-1c4b-4281-b951-d872f2087c98
* This adds some plumbing for propagating the status and error code of a ↵gspencer@chromium.org2010-12-142-4/+5
| | | | | | | | | | | | | | | | | | | | | renderer process that went away so that we can tell at the UI level what happened to the tab: did it crash, or was it killed by the OOM killer (or some other reason). This is in preparation for implementing a new UI for when a process is killed by the OOM on ChromeOS which handles it differently from a crash. Most of the changes are modifications of the argument list to include a status and error code for the exited process, but in addition the following was done: - Changed the name of DidProcessCrash to GetTerminationStatus. - Added TerminationStatus enum in process_util.h, so it can be used as the status returned by GetTerminationStatus. - Improved process_util_unittest to actually test for crashing and terminated processes on all platforms. - Added a new notification for renderers that were killed. - Added error code information to crash notification. - Added status and error code information to renderer IPC message for RenderViewGone. - Added a UMA histogram count for number of renderer kills. BUG=http://crosbug.com/8505 TEST=ran new unit test. Test passes on try servers. Review URL: http://codereview.chromium.org/5172009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69082 0039d316-1c4b-4281-b951-d872f2087c98
* Rename ResourceMessageFilter to RenderMessageFilter, since that's what it ↵jam@chromium.org2010-12-142-12/+12
| | | | | | | | actually is. I will add a ResourceMessageFilter just for resource IPCs in a future change. Review URL: http://codereview.chromium.org/5701004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69076 0039d316-1c4b-4281-b951-d872f2087c98
* Remove unneeded browser_process.h includes.thestig@chromium.org2010-12-052-2/+0
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/5512009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68323 0039d316-1c4b-4281-b951-d872f2087c98
* NaCl: Implement CreateMemoryObject() to support dynamic loading on Macmseaborn@chromium.org2010-11-111-0/+24
| | | | | | | | | | | | | Since NaCl needs only one shared memory object that is mappable with PROT_EXEC, we can take a short cut and pass one in at startup, saving on IPC. BUG=http://code.google.com/p/nativeclient/issues/detail?id=583 TEST=test_runner.html with NaCl-side change applied, on a Mac Review URL: http://codereview.chromium.org/4745001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@65873 0039d316-1c4b-4281-b951-d872f2087c98
* Add histogram to track number of .nexe launches, normalized against opening ↵mmortensen@google.com2010-10-281-1/+2
| | | | | | | | | | | | new tabs. BUG=914 (http://code.google.com/p/nativeclient/issues/detail?id=914) TEST=none Relied on trybots and manually checking "about:histograms" Review URL: http://codereview.chromium.org/4065005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64261 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 63067 - This adds some plumbing for propagating the status and error ↵gspencer@chromium.org2010-10-192-5/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | code of a renderer process that went away so that we can tell at the UI level what happened to the tab: did it crash, or was it killed by the OOM killer (or some other reason). This is in preparation for implementing a new UI for when a process is killed by the OOM on ChromeOS which handles it differently from a crash. Most of the changes are modifications of the argument list to include a status and error code for the exited process, but in addition the following was done: - Changed the name of DidProcessCrash to GetTerminationStatus. - Added some new enum values to TerminationStatus enum (and named it) in process_util.h, so it can be used as the status returned by WhatHappenedToProcess. - Improved process_util_unittest to actually test for crashing and terminated processes on all platforms. - Added a new notification for renderers that were killed. - Added error code information to crash notification. - Added status and error code information to renderer IPC message for RenderViewGone. - Added a UMA histogram count for number of renderer kills. [This change was previously reviewed and LGTM'd: http://codereview.chromium.org/3386014/show but due to issues with "git cl push" was never committed to the tree.] BUG=none TEST=ran new unit test. Test passes on try servers. Review URL: http://codereview.chromium.org/3869001 TBR=gspencer@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63074 0039d316-1c4b-4281-b951-d872f2087c98
* This adds some plumbing for propagating the status and error code of agspencer@chromium.org2010-10-192-4/+5
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | renderer process that went away so that we can tell at the UI level what happened to the tab: did it crash, or was it killed by the OOM killer (or some other reason). This is in preparation for implementing a new UI for when a process is killed by the OOM on ChromeOS which handles it differently from a crash. Most of the changes are modifications of the argument list to include a status and error code for the exited process, but in addition the following was done: - Changed the name of DidProcessCrash to GetTerminationStatus. - Added some new enum values to TerminationStatus enum (and named it) in process_util.h, so it can be used as the status returned by WhatHappenedToProcess. - Improved process_util_unittest to actually test for crashing and terminated processes on all platforms. - Added a new notification for renderers that were killed. - Added error code information to crash notification. - Added status and error code information to renderer IPC message for RenderViewGone. - Added a UMA histogram count for number of renderer kills. [This change was previously reviewed and LGTM'd: http://codereview.chromium.org/3386014/show but due to issues with "git cl push" was never committed to the tree.] BUG=none TEST=ran new unit test. Test passes on try servers. Review URL: http://codereview.chromium.org/3869001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@63067 0039d316-1c4b-4281-b951-d872f2087c98
* Fix clang build when disable_nacl=1.thakis@chromium.org2010-09-271-0/+2
| | | | | | | | | BUG=56933 TEST=None Review URL: http://codereview.chromium.org/3421036 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60647 0039d316-1c4b-4281-b951-d872f2087c98
* Add #include utf_string_conversions.h to all files that use ASCIIToWide andbrettw@chromium.org2010-08-031-0/+1
| | | | | | | | | | | | | | | ASCIIToUTF16. I removed string_util includes from a few places where it obviously wasn't needed. In a separate pass, I'm going to remove ASCIITo* from string_util, then I'm going to do an even later pass to find the unnecessary string_util.h includes and remove them. TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/3058027 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54746 0039d316-1c4b-4281-b951-d872f2087c98
* Convert a bunch of easy AppendSwitchWithValue to *ASCII.evan@chromium.org2010-07-302-6/+6
| | | | | | | | | For this patch, I skipped over any instance where it wasn't a nearly trivial change. Review URL: http://codereview.chromium.org/3069014 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54285 0039d316-1c4b-4281-b951-d872f2087c98
* CommandLine: add a CopySwitchesFrom() and AppendSwitchPath()evan@chromium.org2010-07-292-4/+2
| | | | | | | | | | | These are two common patterns in Chrome code: copying a subset of switches from one CommandLine to another, and appending a FilePath to a CommandLine. This sets me up to do a lot more deprecation in a follow-up change. Review URL: http://codereview.chromium.org/3012021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54218 0039d316-1c4b-4281-b951-d872f2087c98
* NaCl: Fix link time error when DISABLE_NACL is setmseaborn@chromium.org2010-07-291-0/+5
| | | | | | | | | | | | | | | This fixes breakage on the ARM buildbot, introduced by r54113. nacl::Close() is not available when DISABLE_NACL is set. The error was: nacl_process_host.cc: error: undefined reference to 'nacl::Close(int)' BUG=none TEST=none (no trybot for the ARM build) Review URL: http://codereview.chromium.org/3023025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54123 0039d316-1c4b-4281-b951-d872f2087c98
* NaCl: Allow setting up multiple sockets for subprocess instead of just onemseaborn@chromium.org2010-07-292-48/+98
| | | | | | | | | | | | | | | | | | | | | | | | Remove the "channel number" parameter from messages, since this is now fixed in the NaCl plugin code in sel_main_chrome.c. Replace pair_ and descriptor_ with sockets_for_renderer_ and sockets_for_sel_ldr_. NaClProcessMsg_Start: Pass an array of FDs instead of one FD. ViewHostMsg_LaunchNaCl: * Add socket count. * Return an array of FDs instead of one FD. Expose this functionality to the NaCl plugin via a new function, "launch_nacl_process_multi_fd". BUG=50626 TEST=nacl_ui_tests Review URL: http://codereview.chromium.org/2832093 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54113 0039d316-1c4b-4281-b951-d872f2087c98
* `#pragma once` for app, base, chrome, gfx, ipc, net, skia, viewsthakis@chromium.org2010-07-263-0/+3
| | | | | | | | | BUG=50273 TEST=everything still builds, build is 10% faster on windows, same speed on mac/linux TBR: erg git-svn-id: svn://svn.chromium.org/chrome/trunk/src@53716 0039d316-1c4b-4281-b951-d872f2087c98
* Moved common parts of ChildProcessHost into chrome/common and created a ↵sanjeevr@chromium.org2010-07-035-14/+15
| | | | | | | | | | | BrowserChildProcessHost with browser-specific implementation. This is in preparation of creating a ServiceChildProcessHost. BUG=None TEST=Test for regressions . Review URL: http://codereview.chromium.org/2885017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@51593 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up of chrome_browser.gypi/nacl_host files.estade@chromium.org2010-06-166-24/+20
| | | | | | | | | BUG=none TEST=trybots Review URL: http://codereview.chromium.org/2860001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@49895 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 46384 - Fix race in zygote_host_linux where socket was being read ↵kkania@chromium.org2010-05-052-15/+5
| | | | | | | | | | | | | | | | from and written to on different threads. Made ZygoteHost methods all run on PROCESS_LAUNCHER thread. PostTask in linux from UI thread to PROCESS_LAUNCHER thread for DidProcessCrash. Changed DidProcessCrash to answer via a callback, which occurs asynchronously on linux. Rework cases in nacl_host, browser_render_process_host, and child_process_host where this method was being called to fit the callback model. BUG=31737 TEST=none Review URL: http://codereview.chromium.org/1695026 TBR=kkania@chromium.org Review URL: http://codereview.chromium.org/1933007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46429 0039d316-1c4b-4281-b951-d872f2087c98
* Fix race in zygote_host_linux where socket was being read from and written ↵kkania@chromium.org2010-05-042-5/+15
| | | | | | | | | | | | | to on different threads. Made ZygoteHost methods all run on PROCESS_LAUNCHER thread. PostTask in linux from UI thread to PROCESS_LAUNCHER thread for DidProcessCrash. Changed DidProcessCrash to answer via a callback, which occurs asynchronously on linux. Rework cases in nacl_host, browser_render_process_host, and child_process_host where this method was being called to fit the callback model. BUG=31737 TEST=none Review URL: http://codereview.chromium.org/1695026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46384 0039d316-1c4b-4281-b951-d872f2087c98
* Make DidProcessCrash a bit more solid and accurate on Windowsphajdan.jr@chromium.org2010-04-061-4/+2
| | | | | | | | | | | | | I hit the NOTREACHED() inside it while debugging an unrelated problem. Also, now there is one less special case in this function's contract. TEST=none BUG=38048 Review URL: http://codereview.chromium.org/1315009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@43706 0039d316-1c4b-4281-b951-d872f2087c98
* Don't keep a pointer to NaClBrokerHost in NaClBrokerService - use ↵gregoryd@google.com2010-03-175-64/+29
| | | | | | | | | | | | ChildProcessHost::Iterator instead. This change fixes the crash that occured if the browser was closed while the NaCl module was still running (found by nacl_ui_tests). Also make nacl_ui_tests depend on nacl win64 binary (required to run the tests on Win64) BUG=none TEST=nacl_ui_tests Review URL: http://codereview.chromium.org/875005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41804 0039d316-1c4b-4281-b951-d872f2087c98
* Run NaCl itself in Chromium's Linux sandboxmseaborn@chromium.org2010-03-091-1/+1
| | | | | | | | | | | | | | | | This is achieved by forking the NaCl loader process (Chromium's compiled-in sel_ldr) from the Zygote process. This leaves the sel_ldr with a little excess authority, because it has access to the IPC methods (e.g. for fonts) implemented in render_sandbox_host_linux.cc. BUG=36676 TEST=nacl_ui_tests Review URL: http://codereview.chromium.org/669274 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@41056 0039d316-1c4b-4281-b951-d872f2087c98
* Terminate NaCl broker process when no loader processes are runninggregoryd@google.com2010-03-086-11/+70
| | | | | | | | | | BUG=none TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=40744 Review URL: http://codereview.chromium.org/669019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40941 0039d316-1c4b-4281-b951-d872f2087c98
* Add support for starting NaCl win64 process if nacl64.exe is in the version ↵gregoryd@google.com2010-03-061-3/+4
| | | | | | | | | | | | directory. We now assume that nacl64.exe is in the same directory as chrome.dll (and not as chrome.exe as we assumed before). BUG=28176 TEST=none Review URL: http://codereview.chromium.org/668130 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40809 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 40744 - Terminate NaCl broker process when no loader processes are ↵gregoryd@google.com2010-03-056-70/+11
| | | | | | | | | | | | | running BUG=none TEST=none Review URL: http://codereview.chromium.org/669019 TBR=gregoryd@google.com Review URL: http://codereview.chromium.org/668165 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40746 0039d316-1c4b-4281-b951-d872f2087c98
* Terminate NaCl broker process when no loader processes are runninggregoryd@google.com2010-03-056-11/+70
| | | | | | | | BUG=none TEST=none Review URL: http://codereview.chromium.org/669019 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40744 0039d316-1c4b-4281-b951-d872f2087c98
* Remove the --enable-nacl-on-mac flag, since the syscall thunking code is securedspringer@google.com2010-03-021-9/+1
| | | | | | | | | | | | | now. The mac no longer needs 2 flags in order to load .nexes, it is only behind the --internal-nacl flag like everyone else. BUG=328 (tracked in the Native Client project) TEST=Run Chrome on a Mac without the --enable-nacl-on-mac flag, and load a .nexe. It should work. Review URL: http://codereview.chromium.org/661370 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40411 0039d316-1c4b-4281-b951-d872f2087c98
* Move more files from chrome/common to chrome/browserphajdan.jr@chromium.org2010-02-232-2/+2
| | | | | | | | | | to further reduce bad dependencies on chrome/browser. BUG=none TEST=none Review URL: http://codereview.chromium.org/652051 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39703 0039d316-1c4b-4281-b951-d872f2087c98
* Fix bugs in the broker that cause the browser to crash when trying to unload ↵gregoryd@google.com2010-02-221-3/+4
| | | | | | | | a NaCl module or to load another one. Review URL: http://codereview.chromium.org/650088 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@39639 0039d316-1c4b-4281-b951-d872f2087c98
* Move nacl_process_host files into browser/nacl_hostgregoryd@google.com2010-02-114-2/+320
| | | | | | Review URL: http://codereview.chromium.org/566023 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@38849 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the broker process that launches NaCl loader processes on 64-bit ↵gregoryd@google.com2010-02-014-0/+246
| | | | | | | | | | | | Windows systems. BUG=28176 TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=37578 Review URL: http://codereview.chromium.org/542030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37720 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 37578 - Implement the broker process that launches NaCl loader ↵gregoryd@google.com2010-01-304-246/+0
| | | | | | | | | | | | processes on 64bit Windows systems. BUG=28176 TEST=none Review URL: http://codereview.chromium.org/542030 TBR=gregoryd@google.com git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37580 0039d316-1c4b-4281-b951-d872f2087c98
* Implement the broker process that launches NaCl loader processes on 64-bit ↵gregoryd@google.com2010-01-304-0/+246
Windows systems. BUG=28176 TEST=none Review URL: http://codereview.chromium.org/542030 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@37578 0039d316-1c4b-4281-b951-d872f2087c98