File btreplay-use-sysconf-to-get-the-number-of-configured-cpus.patch of Package blktrace.8516
From: Nathan Zimmer <nzimmer@sgi.com>
Date: Mon, 15 Apr 2013 09:53:34 -0500
Subject: btreplay: use sysconf to get the number of configured cpus
Git-repo: git://git.kernel.dk/blktrace.git
Git-commit: fb69749415ae2bd7c3180605d01a5a39f3bd988f
Patch-mainline: blktrace-1.1.0
References: bsc#934392
We should use the standard methods for getting the number of cpus in the
system when they are available. It is good practice to leave the old ways in
place for people stuck on older systems.
Cc: Jens Axboe <axboe@kernel.dk>
Signed-off-by: Nathan Zimmer <nzimmer@sgi.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
Acked-by: Jeff Mahoney <jeffm@suse.com>
---
btreplay/btreplay.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/btreplay/btreplay.c b/btreplay/btreplay.c
index 6f0ba63..fe6cd80 100644
--- a/btreplay/btreplay.c
+++ b/btreplay/btreplay.c
@@ -502,6 +502,9 @@ static inline void start_iter(void)
*/
static void get_ncpus(void)
{
+#ifdef _SC_NPROCESSORS_CONF
+ ncpus = sysconf(_SC_NPROCESSORS_CONF);
+#else
long last_cpu;
cpu_set_t cpus;
@@ -515,6 +518,7 @@ static void get_ncpus(void)
if (CPU_ISSET( last_cpu, &cpus) )
ncpus = last_cpu;
ncpus++;
+#endif
if (ncpus == 0) {
fatal(NULL, ERR_SYSCALL, "Insufficient number of CPUs\n");
/*NOTREACHED*/