summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGiampaolo Rodola <g.rodola@gmail.com>2017-10-26 23:12:53 +0200
committerGiampaolo Rodola <g.rodola@gmail.com>2017-10-26 23:12:53 +0200
commitaf59d7a138664bf80150d672215f9b1705bc3f30 (patch)
treed4f6be038e5c21cd425cca72383df5856760ceb9
parent8d72368934542e78e7dcf1e31ecab3821677bbb2 (diff)
parentf645d8f8b74b69933aa25fe673c7b2c8179937e6 (diff)
downloadpsutil-af59d7a138664bf80150d672215f9b1705bc3f30.tar.gz
Merge branch 'master' of github.com:giampaolo/psutil
-rw-r--r--CREDITS2
-rw-r--r--DEVGUIDE.rst2
-rw-r--r--docs/index.rst78
-rw-r--r--psutil/__init__.py6
-rw-r--r--psutil/_psaix.py17
5 files changed, 45 insertions, 60 deletions
diff --git a/CREDITS b/CREDITS
index 114bd0bc..b54fac21 100644
--- a/CREDITS
+++ b/CREDITS
@@ -43,6 +43,8 @@ Github usernames of people to CC on github when in need of help.
- SunOS:
- wiggin15, Arnon Yaari
- alxchk, Oleksii Shevchuk
+- AIX:
+ - wiggin15, Arnon Yaari
Contributors
============
diff --git a/DEVGUIDE.rst b/DEVGUIDE.rst
index da5c9d79..904f4b8e 100644
--- a/DEVGUIDE.rst
+++ b/DEVGUIDE.rst
@@ -142,7 +142,7 @@ Two icons in the home page (README) always show the build status:
:target: https://ci.appveyor.com/project/giampaolo/psutil
:alt: Windows tests (Appveyor)
-OSX, BSD and Solaris are currently tested manually (sigh!).
+OSX, BSD, AIX and Solaris are currently tested manually (sigh!).
Test coverage
-------------
diff --git a/docs/index.rst b/docs/index.rst
index 8dcef1f9..feb9fd78 100644
--- a/docs/index.rst
+++ b/docs/index.rst
@@ -1061,45 +1061,45 @@ Process class
The last column (speedup) shows an approximation of the speedup you can get
if you call all the methods together (best case scenario).
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | Linux | Windows | OSX | BSD | SunOS |
- +==============================+===============================+==============================+==============================+==========================+
- | :meth:`cpu_num` | :meth:`~Process.cpu_percent` | :meth:`~Process.cpu_percent` | :meth:`cpu_num` | :meth:`name` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`~Process.cpu_percent` | :meth:`~Process.cpu_times` | :meth:`~Process.cpu_times` | :meth:`~Process.cpu_percent` | :meth:`cmdline` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`~Process.cpu_times` | :meth:`io_counters()` | :meth:`memory_info` | :meth:`~Process.cpu_times` | :meth:`create_time` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`create_time` | :meth:`ionice` | :meth:`memory_percent` | :meth:`create_time` | |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`name` | :meth:`memory_info` | :meth:`num_ctx_switches` | :meth:`gids` | :meth:`memory_info` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`ppid` | :meth:`nice` | :meth:`num_threads` | :meth:`io_counters` | :meth:`memory_percent` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`status` | :meth:`memory_maps` | | :meth:`name` | :meth:`nice` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`terminal` | :meth:`num_ctx_switches` | :meth:`create_time` | :meth:`memory_info` | :meth:`num_threads` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | | :meth:`num_handles` | :meth:`gids` | :meth:`memory_percent` | :meth:`ppid` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`gids` | :meth:`num_threads` | :meth:`name` | :meth:`num_ctx_switches` | :meth:`status` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`num_ctx_switches` | :meth:`username` | :meth:`ppid` | :meth:`ppid` | :meth:`terminal` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`num_threads` | | :meth:`status` | :meth:`status` | |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`uids` | | :meth:`terminal` | :meth:`terminal` | :meth:`gids` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`username` | | :meth:`uids` | :meth:`uids` | :meth:`uids` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | | | :meth:`username` | :meth:`username` | :meth:`username` |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`memory_full_info` | | | | |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | :meth:`memory_maps` | | | | |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
- | *speedup: +2.6x* | *speedup: +1.8x / +6.5x* | *speedup: +1.9x* | *speedup: +2.0x* | *speedup: +1.3x* |
- +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | Linux | Windows | OSX | BSD | SunOS | AIX |
+ +==============================+===============================+==============================+==============================+==========================+==========================+
+ | :meth:`cpu_num` | :meth:`cpu_percent` | :meth:`cpu_percent` | :meth:`cpu_num` | :meth:`name` | :meth:`name` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`cpu_percent` | :meth:`cpu_times` | :meth:`cpu_times` | :meth:`cpu_percent` | :meth:`cmdline` | :meth:`cmdline` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`cpu_times` | :meth:`io_counters()` | :meth:`memory_info` | :meth:`cpu_times` | :meth:`create_time` | :meth:`create_time` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`create_time` | :meth:`memory_info` | :meth:`memory_percent` | :meth:`create_time` | | |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`name` | :meth:`memory_maps` | :meth:`num_ctx_switches` | :meth:`gids` | :meth:`memory_info` | :meth:`memory_info` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`ppid` | :meth:`num_ctx_switches` | :meth:`num_threads` | :meth:`io_counters` | :meth:`memory_percent` | :meth:`memory_percent` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`status` | :meth:`num_handles` | | :meth:`name` | :meth:`num_threads` | :meth:`num_threads` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`terminal` | :meth:`num_threads` | :meth:`create_time` | :meth:`memory_info` | :meth:`ppid` | :meth:`ppid` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | | :meth:`username` | :meth:`gids` | :meth:`memory_percent` | :meth:`status` | :meth:`status` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`gids` | | :meth:`name` | :meth:`num_ctx_switches` | :meth:`terminal` | :meth:`terminal` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`num_ctx_switches` | | :meth:`ppid` | :meth:`ppid` | | |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`num_threads` | | :meth:`status` | :meth:`status` | :meth:`gids` | :meth:`gids` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`uids` | | :meth:`terminal` | :meth:`terminal` | :meth:`uids` | :meth:`uids` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`username` | | :meth:`uids` | :meth:`uids` | :meth:`username` | :meth:`username` |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | | | :meth:`username` | :meth:`username` | | |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`memory_full_info` | | | | | |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | :meth:`memory_maps` | | | | | |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
+ | *speedup: +2.6x* | *speedup: +1.8x / +6.5x* | *speedup: +1.9x* | *speedup: +2.0x* | *speedup: +1.3x* | *speedup: +1.3x* |
+ +------------------------------+-------------------------------+------------------------------+------------------------------+--------------------------+--------------------------+
.. versionadded:: 5.0.0
diff --git a/psutil/__init__.py b/psutil/__init__.py
index 006d5f57..bbc1df6d 100644
--- a/psutil/__init__.py
+++ b/psutil/__init__.py
@@ -1160,13 +1160,11 @@ class Process(object):
('rss', 'vms', 'shared', 'text', 'lib', 'data', 'dirty', 'uss', 'pss')
"""
valid_types = list(_psplatform.pfullmem._fields)
- if hasattr(_psplatform, "pfullmem"):
- valid_types.extend(list(_psplatform.pfullmem._fields))
if memtype not in valid_types:
raise ValueError("invalid memtype %r; valid types are %r" % (
memtype, tuple(valid_types)))
- fun = self.memory_full_info if memtype in ('uss', 'pss', 'swap') else \
- self.memory_info
+ fun = self.memory_info if memtype in _psplatform.pmem._fields else \
+ self.memory_full_info
metrics = fun()
value = getattr(metrics, memtype)
diff --git a/psutil/_psaix.py b/psutil/_psaix.py
index 663748bb..a4703c03 100644
--- a/psutil/_psaix.py
+++ b/psutil/_psaix.py
@@ -459,22 +459,7 @@ class Process(object):
@wrap_exceptions
def nice_get(self):
- # For some reason getpriority(3) return ESRCH (no such process)
- # for certain low-pid processes, no matter what (even as root).
- # The process actually exists though, as it has a name,
- # creation time, etc.
- # The best thing we can do here appears to be raising AD.
- # Note: tested on Solaris 11; on Open Solaris 5 everything is
- # fine.
- try:
- return cext_posix.getpriority(self.pid)
- except EnvironmentError as err:
- # 48 is 'operation not supported' but errno does not expose
- # it. It occurs for low system pids.
- if err.errno in (errno.ENOENT, errno.ESRCH, 48):
- if pid_exists(self.pid):
- raise AccessDenied(self.pid, self._name)
- raise
+ return cext_posix.getpriority(self.pid)
@wrap_exceptions
def nice_set(self, value):