summaryrefslogtreecommitdiffstats
path: root/base/process_util_linux.cc
Commit message (Collapse)AuthorAgeFilesLines
* Linux: Try to minimize copying of string information when reading /proc data.erg@chromium.org2012-01-041-12/+12
| | | | | | | | | | BUG=108760 TEST=none Review URL: http://codereview.chromium.org/9071020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@116254 0039d316-1c4b-4281-b951-d872f2087c98
* Replace most LOG/CHECK statements with DLOG/DCHECK statements in base.brettw@chromium.org2011-10-261-9/+10
| | | | | | | | | | | [ Reland of 107042 http://codereview.chromium.org/8368009 ] I tried hard not to change CHECKs that had side effects. I kept fatal checks that seemed security or debugging-info (in crash reports) sensitive, and ones that seems particularly well-conceived. Review URL: http://codereview.chromium.org/8341026 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@107434 0039d316-1c4b-4281-b951-d872f2087c98
* Revert 107042 - Replace most LOG/CHECK statements with DLOG/DCHECK ↵brettw@chromium.org2011-10-251-10/+9
| | | | | | | | | | | | | | statements in base. I tried hard not to change CHECKs that had side effects. I kept fatal checks that seemed security or debugging-info (in crash reports) sensitive, and ones that seems particularly well-conceived. Review URL: http://codereview.chromium.org/8368009 TBR=brettw@chromium.org Review URL: http://codereview.chromium.org/8351025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@107051 0039d316-1c4b-4281-b951-d872f2087c98
* Replace most LOG/CHECK statements with DLOG/DCHECK statements in base.brettw@chromium.org2011-10-251-9/+10
| | | | | | | | | I tried hard not to change CHECKs that had side effects. I kept fatal checks that seemed security or debugging-info (in crash reports) sensitive, and ones that seems particularly well-conceived. Review URL: http://codereview.chromium.org/8368009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@107042 0039d316-1c4b-4281-b951-d872f2087c98
* Trying again to land OOM priority manager changes.gspencer@google.com2011-08-231-9/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | 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
* Revert 97724 - Changing OOM range to 0, 1000 and tweaking OOM algorithm.mattm@chromium.org2011-08-221-34/+9
| | | | | | | | | | | | | | | | | | | | | 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
* Changing OOM range to 0, 1000 and tweaking OOM algorithm.gspencer@google.com2011-08-221-9/+34
| | | | | | | | | | | | | | | | | | 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
* [Mac] Implement base::EnableTerminationOnHeapCorruption() by overriding ↵rsesek@chromium.org2011-08-181-0/+4
| | | | | | | | | | | | | | | | | malloc_error_break(). This makes malloc_error_break() fatal for all processes in an attempt to get better stack traces when heap corruption may occur. BUG=90884,91068,93191 TEST=See bug 93191 for repro steps. A crash report gets generated with a hopefully more-useful stack. Originally landed: http://src.chromium.org/viewvc/chrome?view=rev&revision=97315 Reverted: http://src.chromium.org/viewvc/chrome?view=rev&revision=97322 Review URL: http://codereview.chromium.org/7670025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97351 0039d316-1c4b-4281-b951-d872f2087c98
* Revert "[Mac] Implement base::EnableTerminationOnHeapCorruption() by ↵rsesek@chromium.org2011-08-181-4/+0
| | | | | | | | | | | | | | overriding malloc_error_break" This reverts commits r97315 and r97319. BUG=none TEST=none TBR=mark Review URL: http://codereview.chromium.org/7631046 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97322 0039d316-1c4b-4281-b951-d872f2087c98
* [Mac] Implement base::EnableTerminationOnHeapCorruption() by overriding ↵rsesek@chromium.org2011-08-181-0/+4
| | | | | | | | | | | | | | malloc_error_break(). This makes malloc_error_break() fatal for all processes in an attempt to get better stack traces when heap corruption may occur. BUG=90884,91068,93191 TEST=See bug 93191 for repro steps. A crash report gets generated with a hopefully more-useful stack. Review URL: http://codereview.chromium.org/7670025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@97315 0039d316-1c4b-4281-b951-d872f2087c98
* CrOS - Memory debug widget shows anonymous memory and renderer kills.jamescook@chromium.org2011-08-111-15/+21
| | | | | | | | | | | | | | | 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
* CrOS - Add memory consumption status bar widget behind flagjamescook@chromium.org2011-08-021-9/+27
| | | | | | | | | | | 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
* Revert 94999 - CrOS - Add memory consumption status bar widget behind flagjamescook@chromium.org2011-08-011-27/+9
| | | | | | | | | | | | | | 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
* CrOS - Add memory consumption status bar widget behind flagjamescook@chromium.org2011-08-011-9/+27
| | | | | | | | | | | 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
* Upstream process and thread related code.michaelbai@google.com2011-06-291-1/+7
| | | | | | | | | BUG= TEST= Review URL: http://codereview.chromium.org/7247015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@91009 0039d316-1c4b-4281-b951-d872f2087c98
* Do not redefine malloc&co when ADDRESS_SANITIZER macro is defined.timurrrr@chromium.org2011-05-111-2/+5
| | | | | | | | | | | | | ADDRESS_SANITIZER macro is defined when building the code using https://sites.google.com/a/chromium.org/dev/developers/testing/addresssanitizer This is a copy http://codereview.chromium.org/7004020/ the original patch was prepared by Konstantin Serebryany (kcc@) TBR=willchan Review URL: http://codereview.chromium.org/6995052 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84978 0039d316-1c4b-4281-b951-d872f2087c98
* iwyu: Include stringprintf.h where appropriate, part 1.jhawkins@chromium.org2011-05-101-1/+2
| | | | | | | | | | | BUG=82098 TEST=none R=thakis@chromium.org Review URL: http://codereview.chromium.org/6997006 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@84754 0039d316-1c4b-4281-b951-d872f2087c98
* Fix bug in ProcessIterator::CheckForNextProcess(). Under load it'ssky@chromium.org2011-01-281-4/+4
| | | | | | | | | | | | | very easy for the processes to change between the time we get a proc id from /proc then try to get other status. We shouldn't stop iterating in this case, just continue on. BUG=52022 TEST=none Review URL: http://codereview.chromium.org/6398005 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72964 0039d316-1c4b-4281-b951-d872f2087c98
* Properly order the cc files based off the h files in base/.erg@google.com2011-01-251-84/+84
| | | | | | | | | BUG=68682 TEST=compiles Review URL: http://codereview.chromium.org/6385003 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@72505 0039d316-1c4b-4281-b951-d872f2087c98
* Move base/thread.h to base/threading, fix up callers to use the new location.brettw@chromium.org2011-01-011-1/+1
| | | | | | | | TEST=it compiles BUG=none Review URL: http://codereview.chromium.org/6028009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70345 0039d316-1c4b-4281-b951-d872f2087c98
* Update file version info/memory details/process utils to use string16.avi@chromium.org2010-12-231-2/+1
| | | | | | | | | BUG=23581 TEST=everything still works Review URL: http://codereview.chromium.org/5968008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@70071 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: Allow IO in ProcessMetrics::GetWorkingSetKBytes().thestig@chromium.org2010-12-151-6/+17
| | | | | | | | BUG=61340 TEST=Opening up the task manager on Linux in debug mode does not assert. Review URL: http://codereview.chromium.org/5928001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@69331 0039d316-1c4b-4281-b951-d872f2087c98
* Start using file_util symlink code, now that it's available.gspencer@chromium.org2010-12-031-4/+3
| | | | | | | | | | | | In CL http://codereview.chromium.org/5349007 I added some base API for manipulating symlinks (since I needed it for some ChromeOS code and noticed that other places could use it too), and this just starts using that API. BUG=none TEST=Ran ui_tests, passed trybots. Review URL: http://codereview.chromium.org/5286010 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@68181 0039d316-1c4b-4281-b951-d872f2087c98
* process_util_linux: mark functions that use /proc as safe for disk IOevan@chromium.org2010-11-011-0/+22
| | | | | | | | | | | | Reading files /proc is effectively just a kernel API; it's not unsafe like accessing normal disk files is. BUG=61136 TEST=no more DCHECKs in task manager Review URL: http://codereview.chromium.org/4135015 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@64640 0039d316-1c4b-4281-b951-d872f2087c98
* base: Move SplitString functions into the base namespace and update the callers.tfarina@chromium.org2010-10-141-3/+3
| | | | | | | | | BUG=None TEST=trybots Review URL: http://codereview.chromium.org/3750001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@62483 0039d316-1c4b-4281-b951-d872f2087c98
* Clean up orphaned testserver processes before launching a new one in ↵rsimha@chromium.org2010-10-051-7/+39
| | | | | | | | | | | | | | | net::TestServer Several chrome tests have failed in recent days because some test cases crashed due to failures, leaving behind orphaned testserver processes. These test suites do not use out_of_proc_test_runner, and therefore, do not get the benefit of using the LaunchAppInNewProcessGroup()/KillProcessGroup() mechanism. This patch implements an added layer of safety, by causing TestServer::LaunchPython() to first kill any remaining orphaned instances of testserver.py before launching a new one. The check for an orphaned testserver process on POSIX is a process with exe_name "python", a parent_pid of "1" (indicating that it's an orphan), and command line parameters that contain the strings "testserver.py" and "<port>" where <port> is the port that is being used by the test server instance. BUG=55808,57253 TEST=Run a test that spawns a testserver and dies. Run another test. It shouldn't fail. Review URL: http://codereview.chromium.org/3537002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@61584 0039d316-1c4b-4281-b951-d872f2087c98
* base: Finish moving the SplitString functions from string_util.h to ↵tfarina@chromium.org2010-09-241-0/+1
| | | | | | | | | | | string_split.h BUG=None TEST=trybos Review URL: http://codereview.chromium.org/3447008 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@60422 0039d316-1c4b-4281-b951-d872f2087c98
* Move the number conversions from string_util to a new file.brettw@chromium.org2010-07-301-32/+56
| | | | | | | | | | | | | Use the base namespace in the new file. Update callers. I removed all wstring variants and also the string->number ones that ignore the return value. That encourages people to write code and forget about error handling. TEST=included unit tests BUG=none Review URL: http://codereview.chromium.org/3056029 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@54355 0039d316-1c4b-4281-b951-d872f2087c98
* 40% speed up in parsing the /proc/<pid>/smaps file by changing ↵erg@chromium.org2010-05-121-4/+6
| | | | | | | | | | | | | | StringTokenizer. What used to take 10ms to parse now takes 6ms. - Profiling showed that doing the additional work to work with quotes added a bit of runtime, but most users don't use the optional quotes functionality. This speed parsing up by 20% by switching to a fast-path implementation, reverting to the slower path when necessary. - Eliminate temporary copies of tokens. This speeds up GetWorkingSetKBytes by another 20%. BUG=40033 TEST=Existing StringTokenizerTests. Review URL: http://codereview.chromium.org/1997017 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@47038 0039d316-1c4b-4281-b951-d872f2087c98
* Speed up the Task Manager on linux.erg@chromium.org2010-05-111-3/+12
| | | | | | | | | | | | - Unify the calls to get shared memory and private memory. On Linux, these call the same API and on Linux, it takes >10ms to fetch both values each time it is called. - Cache the returned memory values. While sorting the task manager by memory, it would make the expensive memory call for each row on each sort operation. BUG=40033 TEST=Existing task manager tests. Review URL: http://codereview.chromium.org/2047009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46938 0039d316-1c4b-4281-b951-d872f2087c98
* Replace CHECK(false) by LOG(FATAL) where appropriate.evan@chromium.org2010-05-051-2/+2
| | | | | | | | | The difference is that the error message doesn't contain "Assertion failed: false". Review URL: http://codereview.chromium.org/1970001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@46422 0039d316-1c4b-4281-b951-d872f2087c98
* Move common code into process_util.cc.maruel@chromium.org2010-04-291-30/+28
| | | | | | | | | | | | | Fix namespace usage. Change ProcessEntry to have a common interface accross platforms and change ProcessFilter::Includes() to make use of it. Split NamedProcessIterator in two. BUG=none TEST=none Review URL: http://codereview.chromium.org/1689012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@45953 0039d316-1c4b-4281-b951-d872f2087c98
* Merge the LINUX_TC_MALLOC #define with the existing TC_MALLOC #define.thestig@chromium.org2010-02-261-4/+3
| | | | | | | | BUG=36687 TEST=about:tcmalloc, etc, works when tcmalloc is enabled on Linux. Review URL: http://codereview.chromium.org/660118 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@40080 0039d316-1c4b-4281-b951-d872f2087c98
* Mac: UI tweaks for task manager.thakis@chromium.org2010-01-131-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Nib change: Reduce row height, make scrollbars smaller. Make text in task manager table slightly smaller. Show in decimal digit for %cpu. Show memory in KB/MB, not always in K. Change update frequency from 1s to 2s to match Activity Monitor's default. (all mac-only. ui team is fine with this.) Finally, turn taskman on. BUG=13156 TEST=Open task manager, look at it. Should look & feel similar to Activity Monitor. Review URL: http://codereview.chromium.org/536038 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@36096 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: reenable malloc overrides.agl@chromium.org2010-01-081-66/+49
| | | | | | | | | | | | | | | | | (These were disabled in r35804 and r35810.) This time we are using the __libc_* names to get at the real glibc functions rather than dlsym. This now means that code that calls __libc_* gets the raw functions, not 'safe' ones. Also, this sets the visibility correctly. Previously we were not overriding malloc calls made in shared libraries. BUG=31809 TEST=Covered by unittests. http://codereview.chromium.org/533001 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35823 0039d316-1c4b-4281-b951-d872f2087c98
* Also disable tests for code removed in r35804.agl@chromium.org2010-01-081-0/+2
| | | | git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35810 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: disable malloc tricks to unbreak Ubuntu build.agl@chromium.org2010-01-081-0/+7
| | | | | | | | | BUG=31809 TEST=Run chromium-browser on Ubuntu. It should work. http://codereview.chromium.org/524075 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@35804 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: Adjust /proc/pid/oom_adj to sacrifice plugin and renderer processes ↵thestig@chromium.org2009-12-101-2/+16
| | | | | | | | | | to the OOM killer. BUG=29752 TEST=During out of memory conditions, Linux kernel picks a plugin/renderer over the browser process. Review URL: http://codereview.chromium.org/467058 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@34222 0039d316-1c4b-4281-b951-d872f2087c98
* Enable TCMalloc on Linux by default.willchan@chromium.org2009-11-251-10/+2
| | | | | | | | | | This change also reworks the tcmalloc dependency to be added only to chrome and test_shell, instead of base. This is necessary since otherwise tcmalloc will be double initialized (by both the main executable and dlopen'd shared objects like the npapitestplugin.so). Add valgrind suppressions. This are invalid reads on static initialization in the VDSOSupport module. I haven't investigated it yet, but I suspect they're benign. BUG=http://crbug.com/28149, http://crbug.com/28385 Review URL: http://codereview.chromium.org/399081 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@33010 0039d316-1c4b-4281-b951-d872f2087c98
* Make calloc return NULL while initializing.vandebo@chromium.org2009-11-241-18/+37
| | | | | | | | | BUG=28244 TEST=Run chrome in shared library mode Review URL: http://codereview.chromium.org/431025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32953 0039d316-1c4b-4281-b951-d872f2087c98
* For Linux, override malloc and friends so that we can detect and then stop ↵vandebo@chromium.org2009-11-181-1/+99
| | | | | | | | | | | on out of memory. BUG=27222 TEST=new base unittests Review URL: http://codereview.chromium.org/391044 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32395 0039d316-1c4b-4281-b951-d872f2087c98
* linux: Remove NOTIMPL cluttering test outputevan@chromium.org2009-11-161-1/+0
| | | | | | | | BUG=27222 Review URL: http://codereview.chromium.org/395009 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@32078 0039d316-1c4b-4281-b951-d872f2087c98
* Log warnings, not errors, if we can't fetch memory status forsgk@google.com2009-11-131-3/+4
| | | | | | | | | commit charge reporting. Fix if-blocks around returning 0. BUG=none TEST=none Review URL: http://codereview.chromium.org/386031 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31964 0039d316-1c4b-4281-b951-d872f2087c98
* Ensure OOM is a killer on the Mac.avi@chromium.org2009-11-121-0/+5
| | | | | | | | | BUG=http://crbug.com/12673 TEST=as in bug Review URL: http://codereview.chromium.org/385054 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31819 0039d316-1c4b-4281-b951-d872f2087c98
* More memory stats code cleanup:sgk@chromium.org2009-11-091-0/+46
| | | | | | | | | | | | Move GetSystemCommitCharge() into bsae\process_util*. Kill PrintChromeMemoryUsageInfo(), which was only used by reliability_tests.exe on Windows and whose stats are obsolete. Delete the now-unnecessary chrome\test\perf\mem_usage* files. BUG=none TEST=none Review URL: http://codereview.chromium.org/371025 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31423 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: use /proc/pid/statm to get memory stats when /proc/pid/smaps is ↵thestig@chromium.org2009-11-041-30/+48
| | | | | | | | | | unavailable. BUG=23258 TEST=We get approximate memory usage in about:memory for sandboxed renderers. Review URL: http://codereview.chromium.org/365007 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@31019 0039d316-1c4b-4281-b951-d872f2087c98
* Make the memory resource functions return bools so that we know when the ↵vandebo@chromium.org2009-10-271-1/+1
| | | | | | | | | | | information is not available. Refactor TaskManager slightly. BUG=23366 TEST=See "N/A" for memory usage in Linux task manager Review URL: http://codereview.chromium.org/339012 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@30148 0039d316-1c4b-4281-b951-d872f2087c98
* Eliminate all uses of strerror() in code that uses src/base. strerror() is ↵tschmelcher@chromium.org2009-10-131-1/+1
| | | | | | | | | | | inherently unsafe in multi-threaded apps because it stores the string in a global buffer. It should never be used. If you want to log an error, use PLOG and friends, or if that's too high-level then use safe_strerror(). TEST=built on Linux in 32-bit and 64-bit mode; ran base_unittests in each case; ran Chromium itself in each case; try servers BUG=none Review URL: http://codereview.chromium.org/261055 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28850 0039d316-1c4b-4281-b951-d872f2087c98
* Linux: remove the concept of physical memory from the task manager.agl@chromium.org2009-10-071-6/+4
| | | | | | | | | | | | | | | Physical memory isn't a concept on Linux. We have private pages and proportional set size. This patch matches the task manager up with about:memory. 'Private memory' gets you the number of private pages and 'Shared memory' is the PSS (except on systems with old kernels that don't have PSS, where it'll be zero). http://codereview.chromium.org/242096 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@28337 0039d316-1c4b-4281-b951-d872f2087c98
* linux: implement GetCPUUsage() so the task manager shows CPUevan@chromium.org2009-09-191-0/+96
| | | | | | | | | | | | | Discussed in part here: http://groups.google.com/group/chromium-dev/browse_thread/thread/8e91f66f9af6ccec This implements option 3, which turned out to be pretty simple. BUG=19864 Review URL: http://codereview.chromium.org/215020 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@26647 0039d316-1c4b-4281-b951-d872f2087c98