summaryrefslogtreecommitdiffstats
path: root/chrome/nacl
Commit message (Collapse)AuthorAgeFilesLines
* Revert 101577 - Move buildbot_nacl_integration out of chrome/test, step #1rlp@chromium.org2011-09-171-89/+0
| | | | | | | | | | BUG=90905 Review URL: http://codereview.chromium.org/7922020 TBR=phajdan.jr@chromium.org Review URL: http://codereview.chromium.org/7932004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101604 0039d316-1c4b-4281-b951-d872f2087c98
* Move buildbot_nacl_integration out of chrome/test, step #1phajdan.jr@chromium.org2011-09-161-0/+89
| | | | | | | BUG=90905 Review URL: http://codereview.chromium.org/7922020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@101577 0039d316-1c4b-4281-b951-d872f2087c98
* Make sure that the NaCl 64 bit broker process doesn't hang around if the ↵jam@chromium.org2011-09-132-0/+6
| | | | | | | | | browser process quits unexpectedly. Previously this was done through ChildThread, but we don't use that anymore. TEST=kill browser process while broker is running and see that all nacl64.exe processes are gone Review URL: http://codereview.chromium.org/7877010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100820 0039d316-1c4b-4281-b951-d872f2087c98
* Make the NaCl windows 64 bit binaries not depend on chrome targets. These ↵jam@chromium.org2011-09-127-111/+156
| | | | | | | | | | | | | targets are very simple and used little code from chrome targets. However their dependency on chrome targets was problematic because a lot of code wasn't being built for 64 bit on Windows, and so there were a lot of "dummy" files being added with stub functions and code was also being compiled out in random places for NACL_WIN64. I've made the NaCl 64 bit windows targets self contained. They do use a few files from common, but those files are self-contained. In the future, we could move these to be in the same 64 bit target as the constants from common. However that won't make a maintenance difference since someone could still introduce link dependencies to other files in common. Additionally, since we're not using chrome code anymore, we can avoid having both nacl.exe and nacl.dll. nacl.exe is sufficient, and this saves 1.4MB of uncompresed binaries in the installer. BUG=86322 Review URL: http://codereview.chromium.org/7863024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100767 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up nacl_helper_bootstrap linker scriptmcgrathr@chromium.org2011-09-082-4/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This includes the changes from rev 99975, which got reverted because the gyp file didn't have necessary dependencies to make bots' incremental rebuilds rebuild everything they should have. The gyp file got fixed as part of rev 100031. Using linux_syscall_support.h requires having a global variable (for the local errno), which I did not have in my original version. Hence, we now have bss space, where originally I had none at all. This updates the linker script to have a proper data+bss segment. Without this, the text segment winds up both writable and executable, which is generally frowned upon (and requires extra special privileges in some Linux systems). The .note.gnu.build-id section is generated by the linker (given the --build-id option, which the compiler driver passes by default). This normally produces a PT_NOTE header pointing to the section, so do that in our custom linker script too. We also separate out the .rodata section from .text, so that debugging tools examining the binary are not confused about what is and isn't expected to be machine instructions. (This has no effect on the memory image, just on the ELF file.) BUG= none TEST= hand-verified that the build comes out as intended and still works R=bradchen@google.com,mseaborn@chromium.org Review URL: http://codereview.chromium.org/7845026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100238 0039d316-1c4b-4281-b951-d872f2087c98
* Modify the build recipe for nacl_helper_bootstrap to invoke the linker ↵bradchen@google.com2011-09-071-1/+0
| | | | | | | | | | | | | | | explicitly via an action rather than invoking via g++. This addresses build problems that occurred on certain developer machines. Also, modified tools/ld_bfd/ld script to find the loader within the Chrome OS build chroot. Also re-enable the nacl_helper. BUG=92964,nativeclient:480 TEST=nacl_integration tests on bots Review URL: http://codereview.chromium.org/7841008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100031 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 99975 - nacl_helper_bootstrap: Avoid writable text segmentjamesr@chromium.org2011-09-072-17/+1
| | | | | | | | | | | | | | | | | | | | | | | | Using linux_syscall_support.h requires having a global variable (for the local errno), which I did not have in my original version. Hence, we now have bss space, where originally I had none at all. This updates the linker script to have a proper data+bss segment. Without this, the text segment winds up both writable and executable, which is generally frowned upon (and requires extra special privileges in some Linux systems). BUG= none TEST= hand-verified that the build comes out as intended and still works R=bradchen@google.com Review URL: http://codereview.chromium.org/7840012 TBR=mcgrathr@chromium.org Review URL: http://codereview.chromium.org/7841038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99977 0039d316-1c4b-4281-b951-d872f2087c98
* nacl_helper_bootstrap: Avoid writable text segmentmcgrathr@chromium.org2011-09-072-1/+17
| | | | | | | | | | | | | | | | | | | | | Using linux_syscall_support.h requires having a global variable (for the local errno), which I did not have in my original version. Hence, we now have bss space, where originally I had none at all. This updates the linker script to have a proper data+bss segment. Without this, the text segment winds up both writable and executable, which is generally frowned upon (and requires extra special privileges in some Linux systems). BUG= none TEST= hand-verified that the build comes out as intended and still works R=bradchen@google.com Review URL: http://codereview.chromium.org/7840012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99975 0039d316-1c4b-4281-b951-d872f2087c98
* Revert nacl_helper while working out developer build issuesbradchen@google.com2011-09-061-0/+1
| | | | | | | | | | | | | Identical change previously reviewed as 7789006, couldn't commit due to git issues. TBR=jam@chromium.org BUG= TEST= Review URL: http://codereview.chromium.org/7839007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99789 0039d316-1c4b-4281-b951-d872f2087c98
* Fix nacl_helper argv bug, re-enable nacl_helper, build on linux except ARM. ↵bradchen@google.com2011-09-051-7/+4
| | | | | | | | | | | | | Previously reviewed as http://codereview.chromium.org/7833017; this time ARM build is disabled. TBR=mcgrathr,mseaborn,evanm BUG=92964,nativeclient:480,95196 TEST=nacl_integration on linux Review URL: http://codereview.chromium.org/7800026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99622 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 99617 - Fix nacl_helper startup bug with command line construction.hbono@chromium.org2011-09-051-4/+7
| | | | | | | | | | | | | | | | | | | Add proper chrome dependencies. Re-enable nacl_helper. BUG=92964,nativeclient:480,95168 TEST=nacl_integration tests on bots Review URL: http://codereview.chromium.org/7833017 TBR=bradchen@google.com Review URL: http://codereview.chromium.org/7779029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99619 0039d316-1c4b-4281-b951-d872f2087c98
* Fix nacl_helper startup bug with command line construction.bradchen@google.com2011-09-051-7/+4
| | | | | | | | | | | | | | | | Add proper chrome dependencies. Re-enable nacl_helper. BUG=92964,nativeclient:480,95168 TEST=nacl_integration tests on bots Review URL: http://codereview.chromium.org/7833017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99617 0039d316-1c4b-4281-b951-d872f2087c98
* Disable nacl_helper while fixing DCHECK issue.bradchen@google.com2011-09-021-0/+2
| | | | | | | | | | | TBR=mcgrathr BUG= TEST= Review URL: http://codereview.chromium.org/7831046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99410 0039d316-1c4b-4281-b951-d872f2087c98
* Don't use NaCl helper when run under Valgrindtimurrrr@chromium.org2011-09-021-1/+3
| | | | | | | | | TBR=bradchen,eugenis TEST=Valgrind bots go greener BUG=95171 Review URL: http://codereview.chromium.org/7792096 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99345 0039d316-1c4b-4281-b951-d872f2087c98
* Enable nacl_helper by default.bradchen@google.com2011-09-021-6/+1
| | | | | | | | | | BUG=92964,nativeclient:480 TEST=nacl_integration in chromium bots Review URL: http://codereview.chromium.org/7821021 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99319 0039d316-1c4b-4281-b951-d872f2087c98
* Use chain-loading for Linux nacl_helpermcgrathr@chromium.org2011-09-017-51/+631
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This replaces the nacl_helper_bootstrap program, dynamically-linked against nacl_helper.so, with a standalone, statically-linked nacl_helper_bootstrap program that loads the dynamic linker, instructing it in turn to load the nacl_helper program (now a PIE rather than a DSO). This avoids two problems with the old scheme: 1. The nacl_helper_bootstrap program remained in the dynamic linker's list of loaded objects, as the main executable, even though the memory where its .dynamic section had been was overwritten with the NaCl untrusted address space. Code that traverses the list of all loaded objects could thus attempt to look at pointers into this part of memory, and be led astray. 2. nacl_helper_bootstrap's large (~1G) bss segment could cause the kernel to refuse to load the program because it didn't think there was enough free memory in the system for so large an allocation of anonymous memory. The bootstrap program is kept very small by avoiding all use of libc (except for memset and integer division routines needed on ARM). It has its own custom start-up code hand-written in assembly and its own custom system call stubs done with hand-written GCC inline asm statements. To avoid the second problem, the bootstrap program no longer has a large bss. Instead, it has a special ELF segment (i.e. PT_LOAD header) that specifies no memory access, and a large (~1G) mapping size from the file. This mapping is way off the end of the file, but the kernel doesn't mind that, and since it's all a file mapping, the kernel does not do its normal memory accounting for consuming a large amount of anonymous memory. Unfortunately, it's impossible to get the linker to produce exactly the right PT_LOAD header by itself. Using a custom linker script, we get the layout exactly how we want it and a PT_LOAD header that is almost right. We then use a build-time helper program to munge one field of the PT_LOAD to make it exactly what we need. BUG= http://code.google.com/p/chromium/issues/detail?id=94147 TEST= hand-tested chromium build R=bradchen@google.com Review URL: http://codereview.chromium.org/7776034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99089 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 98909 - Use chain-loading for Linux nacl_helperjar@chromium.org2011-08-317-631/+51
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This replaces the nacl_helper_bootstrap program, dynamically-linked against nacl_helper.so, with a standalone, statically-linked nacl_helper_bootstrap program that loads the dynamic linker, instructing it in turn to load the nacl_helper program (now a PIE rather than a DSO). This avoids two problems with the old scheme: 1. The nacl_helper_bootstrap program remained in the dynamic linker's list of loaded objects, as the main executable, even though the memory where its .dynamic section had been was overwritten with the NaCl untrusted address space. Code that traverses the list of all loaded objects could thus attempt to look at pointers into this part of memory, and be led astray. 2. nacl_helper_bootstrap's large (~1G) bss segment could cause the kernel to refuse to load the program because it didn't think there was enough free memory in the system for so large an allocation of anonymous memory. The bootstrap program is kept very small by avoiding all use of libc (except for memset and integer division routines needed on ARM). It has its own custom start-up code hand-written in assembly and its own custom system call stubs done with hand-written GCC inline asm statements. To avoid the second problem, the bootstrap program no longer has a large bss. Instead, it has a special ELF segment (i.e. PT_LOAD header) that specifies no memory access, and a large (~1G) mapping size from the file. This mapping is way off the end of the file, but the kernel doesn't mind that, and since it's all a file mapping, the kernel does not do its normal memory accounting for consuming a large amount of anonymous memory. Unfortunately, it's impossible to get the linker to produce exactly the right PT_LOAD header by itself. Using a custom linker script, we get the layout exactly how we want it and a PT_LOAD header that is almost right. We then use a build-time helper program to munge one field of the PT_LOAD to make it exactly what we need. BUG= http://code.google.com/p/chromium/issues/detail?id=94147 TEST= hand-tested chromium build, invoked with --nacl-linux-helper R=bradchen@google.com,mseaborn@chromium.org Review URL: http://codereview.chromium.org/7795010 TBR=mcgrathr@chromium.org Review URL: http://codereview.chromium.org/7811013 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98910 0039d316-1c4b-4281-b951-d872f2087c98
* Use chain-loading for Linux nacl_helpermcgrathr@chromium.org2011-08-317-51/+631
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This replaces the nacl_helper_bootstrap program, dynamically-linked against nacl_helper.so, with a standalone, statically-linked nacl_helper_bootstrap program that loads the dynamic linker, instructing it in turn to load the nacl_helper program (now a PIE rather than a DSO). This avoids two problems with the old scheme: 1. The nacl_helper_bootstrap program remained in the dynamic linker's list of loaded objects, as the main executable, even though the memory where its .dynamic section had been was overwritten with the NaCl untrusted address space. Code that traverses the list of all loaded objects could thus attempt to look at pointers into this part of memory, and be led astray. 2. nacl_helper_bootstrap's large (~1G) bss segment could cause the kernel to refuse to load the program because it didn't think there was enough free memory in the system for so large an allocation of anonymous memory. The bootstrap program is kept very small by avoiding all use of libc (except for memset and integer division routines needed on ARM). It has its own custom start-up code hand-written in assembly and its own custom system call stubs done with hand-written GCC inline asm statements. To avoid the second problem, the bootstrap program no longer has a large bss. Instead, it has a special ELF segment (i.e. PT_LOAD header) that specifies no memory access, and a large (~1G) mapping size from the file. This mapping is way off the end of the file, but the kernel doesn't mind that, and since it's all a file mapping, the kernel does not do its normal memory accounting for consuming a large amount of anonymous memory. Unfortunately, it's impossible to get the linker to produce exactly the right PT_LOAD header by itself. Using a custom linker script, we get the layout exactly how we want it and a PT_LOAD header that is almost right. We then use a build-time helper program to munge one field of the PT_LOAD to make it exactly what we need. BUG= http://code.google.com/p/chromium/issues/detail?id=94147 TEST= hand-tested chromium build, invoked with --nacl-linux-helper R=bradchen@google.com,mseaborn@chromium.org Review URL: http://codereview.chromium.org/7795010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@98909 0039d316-1c4b-4281-b951-d872f2087c98
* Reserve 1GB at the base of the address space of linux nacl_helper for Native ↵bradchen@google.com2011-08-174-9/+71
| | | | | | | | | | | | | | | | | | | Client module. Use PathService instead of command line flag to enable helper. Adds a nacl_helper_bootstrap executable that implements the actual space reservation. This is for resubmit of reverted CL 7670011, fixing nacl.gypi for the linux_shared build. See 7670011 and 7599011 for review history. TBR=agl,bradnelson BUG=92964, nativeclient:480 TEST=manual for now Review URL: http://codereview.chromium.org/7655010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97137 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 97056 - Gyp fix for release build.rvargas@google.com2011-08-164-71/+9
| | | | | | | | | | | | | | | | | | Reserve 1GB at the base of the address space of linux nacl_helper for Native Client module. Use PathService instead of command line flag to enable helper. Adds a nacl_helper_bootstrap executable that implements the actual space reservation. See http://codereview.chromium.org/7599011 for extended revision history. This is a gyp fix following a revert. TBR=agl,bradnelson BUG=92964, nativeclient:480 TEST=manual for now Review URL: http://codereview.chromium.org/7670011 TBR=bradchen@google.com Review URL: http://codereview.chromium.org/7671011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97058 0039d316-1c4b-4281-b951-d872f2087c98
* Gyp fix for release build.bradchen@google.com2011-08-164-9/+71
| | | | | | | | | | | | | | | Reserve 1GB at the base of the address space of linux nacl_helper for Native Client module. Use PathService instead of command line flag to enable helper. Adds a nacl_helper_bootstrap executable that implements the actual space reservation. See http://codereview.chromium.org/7599011 for extended revision history. This is a gyp fix following a revert. TBR=agl,bradnelson BUG=92964, nativeclient:480 TEST=manual for now Review URL: http://codereview.chromium.org/7670011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97056 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 97040 - Reserve 1GB at the base address of linux nacl_helper for ↵rvargas@google.com2011-08-164-71/+9
| | | | | | | | | | | | | | | | Native Client. Use PathService instead of command line flag to obtain path for helper. Adds a nacl_helper_bootstrap executable that implements the actual space reservation. BUG=nativeclient:480 TEST=manual for now Review URL: http://codereview.chromium.org/7599011 TBR=bradchen@google.com Review URL: http://codereview.chromium.org/7669004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97042 0039d316-1c4b-4281-b951-d872f2087c98
* Reserve 1GB at the base address of linux nacl_helper for Native Client.bradchen@google.com2011-08-164-9/+71
| | | | | | | | | | | Use PathService instead of command line flag to obtain path for helper. Adds a nacl_helper_bootstrap executable that implements the actual space reservation. BUG=nativeclient:480 TEST=manual for now Review URL: http://codereview.chromium.org/7599011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97040 0039d316-1c4b-4281-b951-d872f2087c98
* Tag IPC::Channel::Listener implementations with OVERRIDEevan@chromium.org2011-08-161-2/+3
| | | | | | Review URL: http://codereview.chromium.org/7661031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97021 0039d316-1c4b-4281-b951-d872f2087c98
* Turn on --enable-nacl-debug.mmortensen@google.com2011-08-033-4/+7
| | | | | | | | | | | | | | | | | Reenable the --enable-nacl-debug switch. This was accidentally turned off in a bigger CL: http://codereview.chromium.org/7395024/ See nacl_main.cc and nacl_listener.cc in that CL to compare to this. BUG= http://code.google.com/p/chromium/issues/detail?id=91425 TEST= manual - w/o this fix, chrome --enable-nacl-debug no longer works, with this change, I was able to launch Chrome from Visual Studio and set breakpoints in a nexe. Review URL: http://codereview.chromium.org/7547002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95253 0039d316-1c4b-4281-b951-d872f2087c98
* Hook GetUserDefaultLCID () to prevent crashes on attempting to connect to ↵jschuh@chromium.org2011-08-021-0/+3
| | | | | | | | | | CSRSS after lockdown. BUG=91216 TEST=None. Review URL: http://codereview.chromium.org/7541034 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95144 0039d316-1c4b-4281-b951-d872f2087c98
* NaCl: Add assertion that NaClMainForChromium() does not returnmseaborn@chromium.org2011-07-251-3/+4
| | | | | | | | | | | | | | | | NaClMainForChromium() should do an _exit() when NaCl untrusted code does an exit syscall. I will change NaClMainForChromium() on the NaCl side to do this. Update the function prototype to match the NaCl-side change. BUG=http://code.google.com/p/nativeclient/issues/detail?id=2083 TEST=run_ppapi_crash_browser_test currently triggers this, before the NaCl-side change, because its CHECK() call happens to do an _exit() Review URL: http://codereview.chromium.org/7500004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93962 0039d316-1c4b-4281-b951-d872f2087c98
* Fix error handling on close() calls.bradchen@google.com2011-07-222-8/+10
| | | | | | | | | | BUG=89914 TEST=clean error logs Review URL: http://codereview.chromium.org/7483015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93566 0039d316-1c4b-4281-b951-d872f2087c98
* A ZygoteForkDelegate using nacl_helper executable to create container ↵bradchen@google.com2011-07-206-67/+354
| | | | | | | | | | | processes for NaCl modules. BUG=nativeclient:480 TEST=NaCl tests in Chrome Review URL: http://codereview.chromium.org/7442001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93195 0039d316-1c4b-4281-b951-d872f2087c98
* Rename CommandLine::GetCommandLineString().msw@chromium.org2011-07-202-2/+2
| | | | | | | | | | | | Fix string hackery in net/tools/dump_cache/dump_cache.cc Fix const casts in chrome/installer/util/product.cc and base/process_util_win.cc. BUG=73195 TEST=none Review URL: http://codereview.chromium.org/7386002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93165 0039d316-1c4b-4281-b951-d872f2087c98
* Take two at splitting result codes between content and chrome.dpranke@chromium.org2011-07-191-2/+2
| | | | | | | | | | | | content/common/result_codes.h contains only the codes defined in content. chrome/common/chrome_result_codes.h contains the codes defined in chrome and also includes (for convenience) the content header. R=jam@chromium.org BUG=76699 TEST=everything compiles Review URL: http://codereview.chromium.org/7397004 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93082 0039d316-1c4b-4281-b951-d872f2087c98
* Revert r92730, r92731, r92732 ... will land again once I ensure the win ↵dpranke@chromium.org2011-07-151-2/+2
| | | | | | | | | | | | | builds compile. TBR=jam@chromium.org BUG=none TEST= Review URL: http://codereview.chromium.org/7400002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92733 0039d316-1c4b-4281-b951-d872f2087c98
* This change will split the result codes between content and chrome.dpranke@chromium.org2011-07-151-2/+2
| | | | | | | | | | | | | | | This adds a new file into chrome/common and does a lot of renaming. The current version is just a sketch of the headers, and nothing will compile. R=jam@chromium.org BUG=76699 TEST=everything still compiles and runs Review URL: http://codereview.chromium.org/7377010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92730 0039d316-1c4b-4281-b951-d872f2087c98
* Remove app from a bunch of DEPS files.tfarina@chromium.org2011-06-301-1/+0
| | | | | | | | | | | BUG=72317 TEST=None R=rsesek@chromium.org Review URL: http://codereview.chromium.org/7218065 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91179 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 90805 - I am submitting this with LGTMs from agl@ and evanm@. I'm ↵fischman@chromium.org2011-06-286-355/+67
| | | | | | | | | | | | | | | | | | | | | | | marking this as TBR=jam@ because he is on vacation. He previously LGTMed the reverted CL (link below) and there are not substantive changes since then. Modify the Chrome Linux zygote to support a nacl_helper executable, facilitating a special address-space layout as required by NaCl on ARM and ATOM CPUs. In passing, simplify some shared elements of launching NaCl modules in Chrome. This is an update to a previously reverted CL. Please see http://codereview.chromium.org/6995121 for the earlier reviews. Patching nacl_helper CL into fresh branch. BUG=nativeclient:480 TEST=nativeclient in-browser tests TBR=jam@chromium.org TBR=bradchen@google.com Review URL: http://codereview.chromium.org/7230057 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90813 0039d316-1c4b-4281-b951-d872f2087c98
* I am submitting this with LGTMs from agl@ and evanm@. I'm marking this as ↵bradchen@google.com2011-06-286-67/+355
| | | | | | | | | | | | | | | | | | | | TBR=jam@ because he is on vacation. He previously LGTMed the reverted CL (link below) and there are not substantive changes since then. Modify the Chrome Linux zygote to support a nacl_helper executable, facilitating a special address-space layout as required by NaCl on ARM and ATOM CPUs. In passing, simplify some shared elements of launching NaCl modules in Chrome. This is an update to a previously reverted CL. Please see http://codereview.chromium.org/6995121 for the earlier reviews. Patching nacl_helper CL into fresh branch. BUG=nativeclient:480 TEST=nativeclient in-browser tests TBR=jam@chromium.org git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90805 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 90681 - New NaCl zygote implementation 2, in which Chrome zygote ↵fischman@chromium.org2011-06-286-343/+67
| | | | | | | | | | | | | | | | forks a NaCl helper. This patch can launch earth_c.html with and without the SUID sandbox. It is enabled with the environment variable NACL_NEW_ZYGOTE. BUG=nativeclient:480 TEST=nativeclient in-browser tests on Linux, ChromeOS Review URL: http://codereview.chromium.org/6995121 TBR=bradchen@google.com Review URL: http://codereview.chromium.org/7274011 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90682 0039d316-1c4b-4281-b951-d872f2087c98
* New NaCl zygote implementation 2, in which Chrome zygote forks a NaCl helper.bradchen@google.com2011-06-276-67/+343
| | | | | | | | | | | This patch can launch earth_c.html with and without the SUID sandbox. It is enabled with the environment variable NACL_NEW_ZYGOTE. BUG=nativeclient:480 TEST=nativeclient in-browser tests on Linux, ChromeOS Review URL: http://codereview.chromium.org/6995121 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@90681 0039d316-1c4b-4281-b951-d872f2087c98
* Move sandbox_policy to content.jam@chromium.org2011-05-282-2/+2
| | | | | | | BUG=76697 Review URL: http://codereview.chromium.org/7084010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@87183 0039d316-1c4b-4281-b951-d872f2087c98
* Virtual destructors should have virtual keyword.hans@chromium.org2011-05-251-1/+1
| | | | | | | | | | | | | | | | | Make sure user-declared virtual destructors always have the virtual keyword. The Clang style-check plugin will check for this soon. No functionality change: virtual is only added to destructors that are already implicitly virtual. Also fix a couple of in-line destructor definitions. BUG=83408 TEST=none Review URL: http://codereview.chromium.org/7064033 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@86587 0039d316-1c4b-4281-b951-d872f2087c98
* Move SystemMonitor to base/.willchan@chromium.org2011-05-181-3/+3
| | | | | | | | | | | | | | | I plan to use SystemMonitor in net/. Fix up the Mac implementation not to use Cocoa APIs since @interface is not allowed in base. BUG=none TEST=none Committed: http://src.chromium.org/viewvc/chrome?view=rev&revision=85732 Review URL: http://codereview.chromium.org/7015017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85737 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 85732 (broke build) - Move SystemMonitor to base/.willchan@chromium.org2011-05-181-3/+3
| | | | | | | | | | | | | | | | I plan to use SystemMonitor in net/. Fix up the Mac implementation not to use Cocoa APIs since @interface is not allowed in base. BUG=none TEST=none Review URL: http://codereview.chromium.org/7015017 TBR=willchan@chromium.org Review URL: http://codereview.chromium.org/7042003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85734 0039d316-1c4b-4281-b951-d872f2087c98
* Move SystemMonitor to base/.willchan@chromium.org2011-05-181-3/+3
| | | | | | | | | | | | | I plan to use SystemMonitor in net/. Fix up the Mac implementation not to use Cocoa APIs since @interface is not allowed in base. BUG=none TEST=none Review URL: http://codereview.chromium.org/7015017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@85732 0039d316-1c4b-4281-b951-d872f2087c98
* Make the Pepper proxy support in-process font rendering.brettw@chromium.org2011-05-101-2/+2
| | | | | | | | | | | | | This implements a WebKit thread in the PPAPI plugin process so we can do the font calls without IPC. The existing font support was refactored into a virtual class (to prevent PPAPI from depending on WebKit and creating a circular GYP dependency). This moves the renderer sandbox support into content/common so that it can be used by the PPAPI process. Review URL: http://codereview.chromium.org/6981001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84856 0039d316-1c4b-4281-b951-d872f2087c98
* NaCl: Send the integrated runtime (IRT) library to NaClmseaborn@chromium.org2011-05-032-2/+28
| | | | | | | | | | | | | | | | | | Change the browser process to open the IRT file and send it to the nascent NaCl process. If the IRT file is not present, handle this gracefully while still allowing the NaCl process to run. This is because there may be corner cases to sort out for getting the IRT into the various Chrome install images. In the mean time, NaCl executables that are not built to use the IRT should continue to work. BUG=http://code.google.com/p/nativeclient/issues/detail?id=1595 TEST=nacl_integration on the Chrome trybot Review URL: http://codereview.chromium.org/6873133 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83855 0039d316-1c4b-4281-b951-d872f2087c98
* Rename NaClThread to NaClLauncherThreadmseaborn@chromium.org2011-04-213-20/+22
| | | | | | | | | | | | | | | | | This avoids a conflict with NaCl's own "struct NaClThread". NaClLauncherThread is also a more descriptive name. The goal is to be able to #include NaCl's sel_ldr.h so that we do not have to duplicate the prototype for NaClMainForChromium(). However, we cannot do that immediately because there is still a conflict between NaCl's LOG_FATAL and Chromium's LOG_FATAL. BUG=http://code.google.com/p/nativeclient/issues/detail?id=1595 TEST=trybots Review URL: http://codereview.chromium.org/6880074 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82496 0039d316-1c4b-4281-b951-d872f2087c98
* linux: don't always print dlopen errors from LoadNativeLibraryevan@chromium.org2011-04-182-4/+4
| | | | | | | | | | | Instead, return them to the caller and let the caller decide whether the error is worth notifying the user about. BUG=79068 Review URL: http://codereview.chromium.org/6864020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@82008 0039d316-1c4b-4281-b951-d872f2087c98
* Move some files from base to base/memory.levin@chromium.org2011-03-281-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | raw_scoped_refptr_mismatch_checker.h ref_counted.cc ref_counted.h ref_counted_memory.cc ref_counted_memory.h ref_counted_unittest.cc scoped_callback_factory.h scoped_comptr_win.h scoped_handle.h scoped_native_library.cc scoped_native_library.h scoped_native_library_unittest.cc scoped_nsobject.h scoped_open_process.h scoped_ptr.h scoped_ptr_unittest.cc scoped_temp_dir.cc scoped_temp_dir.h scoped_temp_dir_unittest.cc scoped_vector.h singleton.h singleton_objc.h singleton_unittest.cc linked_ptr.h linked_ptr_unittest.cc weak_ptr.cc weak_ptr.h weak_ptr_unittest.cc BUG=None TEST=Compile Review URL: http://codereview.chromium.org/6714032 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@79524 0039d316-1c4b-4281-b951-d872f2087c98
* Move the renderer_web* files to content.jam@chromium.org2011-03-181-1/+1
| | | | | | | TBR=avi Review URL: http://codereview.chromium.org/6713024 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78643 0039d316-1c4b-4281-b951-d872f2087c98
* Move the remaining files in chrome\common to content\common.jam@chromium.org2011-03-171-1/+1
| | | | | | | TBR=avi Review URL: http://codereview.chromium.org/6672070 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@78516 0039d316-1c4b-4281-b951-d872f2087c98