diff options
author | Giampaolo Rodola <g.rodola@gmail.com> | 2016-01-08 11:15:21 +0000 |
---|---|---|
committer | Giampaolo Rodola <g.rodola@gmail.com> | 2016-01-08 11:15:21 +0000 |
commit | bc6cf436e2c253c863380839af32289b67640572 (patch) | |
tree | c90d2c8b42c76ff8d2fd07be23cccba9b44e6df9 | |
parent | 01564d8036c3d20678036afddeb098b9719185b4 (diff) | |
download | psutil-bc6cf436e2c253c863380839af32289b67640572.tar.gz |
#557 (NetBSD): fix mem swap fun
-rw-r--r-- | psutil/_psutil_bsd.c | 1 | ||||
-rw-r--r-- | psutil/arch/bsd/netbsd.c | 12 |
2 files changed, 5 insertions, 8 deletions
diff --git a/psutil/_psutil_bsd.c b/psutil/_psutil_bsd.c index 47d55664..888cf7b7 100644 --- a/psutil/_psutil_bsd.c +++ b/psutil/_psutil_bsd.c @@ -461,7 +461,6 @@ psutil_proc_memory_info(PyObject *self, PyObject *args) { if (psutil_kinfo_proc(pid, &kp) == -1) return NULL; - return Py_BuildValue( "(lllll)", #ifdef __FreeBSD__ diff --git a/psutil/arch/bsd/netbsd.c b/psutil/arch/bsd/netbsd.c index 36977e27..5491c0fe 100644 --- a/psutil/arch/bsd/netbsd.c +++ b/psutil/arch/bsd/netbsd.c @@ -455,26 +455,24 @@ psutil_swap_mem(PyObject *self, PyObject *args) { struct swapent *swdev; int nswap, i; - if ((nswap = swapctl(SWAP_NSWAP, 0, 0)) == 0) { - warn("failed to get swap device count"); - PyErr_SetFromErrno(PyExc_OSError); - return NULL; + nswap = swapctl(SWAP_NSWAP, 0, 0); + if (nswap == 0) { + // This means there's no swap partition. + return Py_BuildValue("(iiiii)", 0, 0, 0, 0, 0); } if ((swdev = calloc(nswap, sizeof(*swdev))) == NULL) { - warn("failed to allocate memory for swdev structures"); PyErr_SetFromErrno(PyExc_OSError); return NULL; } if (swapctl(SWAP_STATS, swdev, nswap) == -1) { free(swdev); - warn("failed to get swap stats"); PyErr_SetFromErrno(PyExc_OSError); return NULL; } - // Total things up + // Total things up. swap_total = swap_free = 0; for (i = 0; i < nswap; i++) { if (swdev[i].se_flags & SWF_ENABLE) { |