| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
|
|
|
|
|
|
|
|
| |
It turns out this function also wants a conversion, as it simplifies a bunch
of interfaces used by TestTimeouts.
R=jar@chromium.org
BUG=108171
Review URL: http://codereview.chromium.org/9791052
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@130063 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=111733
TEST=In the cros chroot, ran 'USE=component_build emerge-$BOARD chromeos-chrome'
Review URL: https://chromiumcodereview.appspot.com/9826041
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128416 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=111733
TEST=none
Review URL: http://codereview.chromium.org/9834001
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@128351 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
I found a need to look at the implementation to confirm that process_handle would never be assigned to if the call failed. So I added a comment for future readers.
While doing so, I found an edge case where I think the process handle could be leaked.
BUG=None
TEST=Ask a random developer whether they must check process_handle if LaunchProcess returns false. If they look at process_util_*.cc, fail.
Review URL: http://codereview.chromium.org/9689081
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@126890 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
base::file_handle_mapping_vector to StudlyCaps.
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/9429039
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@123438 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
111361, but the true fix is cpu@'s r119830.
a) Unify code to retrieve HMODULE based on address in base::GetModuleFromAddress. (cpu@'s r119830 already has the fix to use the DLL's HMODULE 119830 rather than the EXE's HINSTANCE)
b) Try harder to unregister the window class, by trying it first in ProcessSingleton::Cleanup, which gets called before the fast shutdown path calls ExitProcess(). Also, use correct HMODULE to unregister.
c) Avoid any possibility of a race to create the message window when the Create() method is called from NotifyOtherProcessOrCreate() or from outside the class by moving the implementation of Create(), which was always called from the constructor, into the constructor and making Create() just return true or false based on the success of the work already done.
BUG=111361
Review URL: http://codereview.chromium.org/9121046
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@121480 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
This is needed to expose crosh process to hterm (if pseudo terminal used for
communication between terminalPrivateApi and crosh process is not controlling, job
control in the crosh process won't work, and it won't be able to e.g. process signals).
TEST=None
BUG=chromium-os:23273
Review URL: https://chromiumcodereview.appspot.com/9176013
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@118585 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
this change is the first part of the FreeBSD support
BUG=
TEST=
Review URL: http://codereview.chromium.org/8773051
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@112936 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
For now, Chromium have five same code in various place to handle JobObject
as KILL_ON_JOB_CLOSE.
This change provide a common utility function to be used by them.
BUG=n/a
TEST=n/a; run existing unit tests because this is just a refactoring change
Review URL: http://codereview.chromium.org/8667006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111441 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
base/process_util, alongside the other process methods.
The only non-trivial move change is to the Windows implementation, where I changed KillProcess to use an exit code of kProcessKilledExitCode instead of content::RESULT_CODE_HUNG. cpu said that the existing code was incorrect, since GetTerminationStatus() should be mapping that result to TERMINATION_STATUS_PROCESS_WAS_KILLED. So I changed the exit code to kProcessKilledExitCode. This might make the UMA stats for killed processes to go up (and crashed to go down), but that will be an accounting change and should be zero-sum.
BUG=98716
Review URL: http://codereview.chromium.org/8674003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@111371 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
BUG=104314
TEST=no change
Review URL: http://codereview.chromium.org/8520018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@110218 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
NaCl processes need an unusually large amount of address space, because
they do huge PROT_NONE mappings to reserve contiguous regions much larger
than the memory that will actually be used. An ambient RLIMIT_AS setting
can break this, so we need to raise the soft limit to the hard limit (which
is usually unlimited).
We cannot rely on doing this inside the nacl_helper child itself, so we
must do it in the zygote before it exec's nacl_helper_bootstrap. That exec
itself could fail if the limit is too small, because nacl_helper_bootstrap
uses ELF program headers to reserve a large region of address space.
BUG= http://code.google.com/p/nativeclient/issues/detail?id=2438
TEST= nacl apps work when "ulimit -S -v 5376320" was run before starting chrome
R=mark@chromium.org,bsy@google.com,bradchen@google.com
Review URL: http://codereview.chromium.org/8528041
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@110123 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
also add a way to override the hardcoded path in PathProviderPosix()
to ease development
BUG=
TEST=
Review URL: http://codereview.chromium.org/8390002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@107149 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
OpenBSD and FreeBSD need -I/usr/local/include for <execinfo.h>.
Use !#/usr/bin/env bash because on !linux it's not located there.
Patch by Robert Nagy <robert@openbsd.org>
BUG=none
TEST=none
Review URL: http://codereview.chromium.org/8228005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@105257 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=
TEST=
Review URL: http://codereview.chromium.org/8059007
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@103236 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
from TestServer to LaunchProcess,
so that I can re-use it in other places
for experiments.
BUG=none
Review URL: http://codereview.chromium.org/7789018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@100027 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
child doesn't try to check in with the Mach broker before the parent is ready.
This resolves a race between the browser and its child processes.
base::LaunchOptions gets a new member, synchronize, currently Mac-only
although there's nothing Mac-specific about the implementation. When set,
it allows base::LaunchProcess clients to request that the child process block
until released by the new base::LaunchSynchronize call. When creating child
processes, the child process launcher now requests this new synchronization
behavior to give it a chance to set up the Mach broker to expect the child
before the child tries to check in with it.
BUG=94295
TEST=Chrome should work. You see fewer of this logged:
Unknown process (pid) is sending Mach IPC messages!
But you still might see some of these due to bug 94543.
Review URL: http://codereview.chromium.org/7740036
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99245 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
This is in preparation for moving the code in ChromeMain (and associated platform files) to a common place that can be used by both chrome and other embedders of content (i.e. content_shell). Included is a change to make the sandbox code not need an AtExitManager. This is necessary because content_shell would be just one exe, and we'd need to initialize the sandbox before calling ChromeMain, which is what would creat AtExitManager.I removed the code that printed the tcmalloc stacks in the OOM handler (i.e. r33993) under Windows. The issue is I wanted to move the OOM handling code to base to match the other platforms (in a long string of changes to make the startup code more sane, so I can share it with a browser built over content). When I tried moving the tcmalloc code to base, then I ran into a bunch of linker errors because a bunch of targets that depend on base don't depend on allocator. When I tried to add that to base, I ran into strange gyp errors (see patchset 2). I asked Jim/Eric and they said they don't use this data from dumps, and that most of the OOM minimdumps are in v8 heap anyways. When James get back, if he still uses this I can figure out how to put this back.BUG=90445
Review URL: http://codereview.chromium.org/7810005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@99032 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
First landing failed because of an obscure problem with building
linux_shared. This change passes the linux_shared trybot (and
linux and linux_chromeos trybots).
Changing OOM range to 0, 1000 and tweaking OOM algorithm.
With this change, we now use the newer oom_score_adj file (with
fallback to oom_adj when on a system that doesn't support it) so that
we can take advantage of a finer range ([0, 1000] instead of [0, 15]).
Also tweaked the OOM priority manager to prioritize things in a
slightly different order, preferring (even more) not to kill tabs that
the user has currently selected.
Original review: http://codereview.chromium.org/7671033/
BUG=chromium-os:18421, chromium:65009
TEST=Ran on device, observed OOM adj values, forced OOM conditions to
watch kills.
Review URL: http://codereview.chromium.org/7708020
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97888 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this change, we now use the newer oom_score_adj file (with
fallback to oom_adj when on a system that doesn't support it) so that
we can take advantage of a finer range ([0, 1000] instead of [0, 15]).
Also tweaked the OOM priority manager to prioritize things in a
slightly different order, preferring (even more) not to kill tabs that
the user has currently selected.
BUG=chromium-os:18421, chromium:65009
TEST=Ran on device, observed OOM adj values, forced OOM conditions to
watch kills.
Review URL: http://codereview.chromium.org/7671033
TBR=gspencer@google.com
Review URL: http://codereview.chromium.org/7685030
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97728 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
With this change, we now use the newer oom_score_adj file (with
fallback to oom_adj when on a system that doesn't support it) so that
we can take advantage of a finer range ([0, 1000] instead of [0, 15]).
Also tweaked the OOM priority manager to prioritize things in a
slightly different order, preferring (even more) not to kill tabs that
the user has currently selected.
BUG=chromium-os:18421, chromium:65009
TEST=Ran on device, observed OOM adj values, forced OOM conditions to
watch kills.
Review URL: http://codereview.chromium.org/7671033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97724 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Change the status area memory widget to display anonymous memory allocated,
which is a good proxy for "total memory allocated" and what we use in the
UMA histograms (Platform.MemuseAnon[0-5]). Also display renderer kills, which
will tick up when we run out of memory and the OOM killer starts running.
Refactor GetSystemMemoryInfo to use a struct.
BUG=chromium-os:18969
TEST=manual, turn on memory status widget in about:flags and restart, open some tabs and watch memory consumption increase, use Task Manager / End Process to kill a process and watch the kill count increase
Review URL: http://codereview.chromium.org/7607035
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@96423 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
| |
R=rvargas
Review URL: http://codereview.chromium.org/7461141
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95618 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Pass --memory-widget on CrOS to get a real-time display, updated every 5 seconds, of the system's free memory. Tooltip and menu itself detail the data from /proc/meminfo. Also made base::GetSystemMemoryInfo() available on Linux systems to provide detailed data.
BUG=chromium-os:18446
TEST=manual
Review URL: http://codereview.chromium.org/7518010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95089 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Pass --memory-widget on CrOS to get a real-time display, updated every 5 seconds, of the system's free memory. Tooltip and menu itself detail the data from /proc/meminfo. Also made base::GetSystemMemoryInfo() available on Linux systems to provide detailed data.
BUG=chromium-os:18446
TEST=manual
Review URL: http://codereview.chromium.org/7518010
TBR=jamescook@chromium.org
Review URL: http://codereview.chromium.org/7544033
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@95004 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Pass --memory-widget on CrOS to get a real-time display, updated every 5 seconds, of the system's free memory. Tooltip and menu itself detail the data from /proc/meminfo. Also made base::GetSystemMemoryInfo() available on Linux systems to provide detailed data.
BUG=chromium-os:18446
TEST=manual
Review URL: http://codereview.chromium.org/7518010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94999 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
BUG=90078
TEST=none
Review URL: http://codereview.chromium.org/7474010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@94636 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=88990
Review URL: http://codereview.chromium.org/7423003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93035 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
This is the last of the LaunchApp family.
BUG=88990
Review URL: http://codereview.chromium.org/7409004
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@93034 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
It is now implemented as an option to LaunchProcess.
BUG=88990
Review URL: http://codereview.chromium.org/7395037
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92948 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
| |
And delete temporary shims.
BUG=88990
Review URL: http://codereview.chromium.org/7386010
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92897 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
| |
Linux sandbox.
BUG=nativeclient:480
TEST=base/process_util_unittest.cc
Review URL: http://codereview.chromium.org/7401002
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92771 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
| |
Rather than passing the out param process handle via the options,
take it as a function argument. This simplifies many callers.
BUG=88990
Review URL: http://codereview.chromium.org/7377012
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92701 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=88990
Review URL: http://codereview.chromium.org/7351003
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92598 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=88990
Review URL: http://codereview.chromium.org/7346017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92393 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
This reverts commit r92240, ChromeOS failures.
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92244 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=88990
Review URL: http://codereview.chromium.org/7346017
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92240 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
BUG=88990
Review URL: http://codereview.chromium.org/7258005
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@92200 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Due to refactoring, we can use the common API for this.
Review URL: http://codereview.chromium.org/7284018
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91612 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
Register protocol handler needs to check the return value of scripts it runs and
collects output from. There needs a variant of GetAppOutput which returns the
exit code of the application run, not just a success or failure, so this function
has been added.
BUG=83557
TEST=Unit test added
Review URL: http://codereview.chromium.org/7198034
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91527 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
base provides a bunch of process-spawning functions that only differ by one
or two arguments; worse, they're all backed by the same implementation anyway.
Unify all the functions into one LaunchProcess() function, which takes a
struct containing a bunch of optional arguments.
For this change, I'm trying to not change the base API. Follow up changes
can fix callers. Because of this, I made temporary shims for all of the old
API.
Review URL: http://codereview.chromium.org/7283019
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91220 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/6985006
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84693 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
Reapply r83630, r83629, r83583, and fix the one compile error.
TBR=rvargas
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83740 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/6902177
TBR=evan@chromium.org
Review URL: http://codereview.chromium.org/6903159
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83635 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
| |
Review URL: http://codereview.chromium.org/6902177
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83629 0039d316-1c4b-4281-b951-d872f2087c98
|
|
|
|
|
|
|
|
| |
This builds base_unittests using libbase as a component.
Review URL: http://codereview.chromium.org/6904109
git-svn-id: svn://svn.chromium.org/chrome/trunk/src@83583 0039d316-1c4b-4281-b951-d872f2087c98
|