diff options
author | Daniel Borkmann <dborkman@redhat.com> | 2013-06-12 12:45:49 +0200 |
---|---|---|
committer | Daniel Borkmann <dborkman@redhat.com> | 2013-06-12 12:45:49 +0200 |
commit | c0d19330c7df0a441545942e7ac87721c718edf4 (patch) | |
tree | 4b0a4d844dfbfdeedefbda2bf176c58e1862382e /cpus.h | |
parent | 4ee9acd587161df26332fc1e07027b1b527e8100 (diff) |
cpus: let it always return an unsigned int and bail out on error
In case of an error, just panic, to make sure we always get a val >= 1.
Signed-off-by: Daniel Borkmann <dborkman@redhat.com>
Diffstat (limited to 'cpus.h')
-rw-r--r-- | cpus.h | 20 |
1 files changed, 16 insertions, 4 deletions
@@ -2,15 +2,27 @@ #define CPUS_H #include <unistd.h> +#include "built_in.h" +#include "die.h" -static inline int get_number_cpus(void) +static inline unsigned int get_number_cpus(void) { - return sysconf(_SC_NPROCESSORS_CONF); + int ret = sysconf(_SC_NPROCESSORS_CONF); + + if (unlikely(ret <= 0)) + panic("get_number_cpus error!\n"); + + return ret; } -static inline int get_number_cpus_online(void) +static inline unsigned int get_number_cpus_online(void) { - return sysconf(_SC_NPROCESSORS_ONLN); + int ret = sysconf(_SC_NPROCESSORS_ONLN); + + if (unlikely(ret <= 0)) + panic("get_number_cpus_online error!\n"); + + return ret; } #endif /* CPUS_H */ |