summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorSebastian Huber <sebastian.huber@embedded-brains.de>2015-03-09 15:23:20 +0100
committerSebastian Huber <sebastian.huber@embedded-brains.de>2015-03-09 15:25:24 +0100
commit40ecd117b265d5d5c8a4da5987af3e4b881b0fc9 (patch)
tree3c721c18d6c2bddbb468faba9ffc62c09a979ca3
parentsysconf: Simplify (diff)
downloadrtems-40ecd117b265d5d5c8a4da5987af3e4b881b0fc9.tar.bz2
sysconf: Add _SC_NPROCESSORS_(CONF|ONLN)
-rw-r--r--cpukit/posix/src/sysconf.c4
-rw-r--r--testsuites/psxtests/psxsysconf/init.c9
2 files changed, 13 insertions, 0 deletions
diff --git a/cpukit/posix/src/sysconf.c b/cpukit/posix/src/sysconf.c
index 7bbf865788..0e7b1e5305 100644
--- a/cpukit/posix/src/sysconf.c
+++ b/cpukit/posix/src/sysconf.c
@@ -47,6 +47,10 @@ long sysconf(
return PAGE_SIZE;
case _SC_SYMLOOP_MAX:
return RTEMS_FILESYSTEM_SYMLOOP_MAX;
+ case _SC_NPROCESSORS_CONF:
+ return (long) rtems_configuration_get_maximum_processors();
+ case _SC_NPROCESSORS_ONLN:
+ return (long) rtems_get_processor_count();
#if defined(__sparc__)
case 515: /* Solaris _SC_STACK_PROT */
return 0;
diff --git a/testsuites/psxtests/psxsysconf/init.c b/testsuites/psxtests/psxsysconf/init.c
index b2b9d5fc20..2dd9018722 100644
--- a/testsuites/psxtests/psxsysconf/init.c
+++ b/testsuites/psxtests/psxsysconf/init.c
@@ -73,6 +73,15 @@ void *POSIX_Init(
if ( (sc != -1) || (errno != EINVAL) )
rtems_test_exit(0);
+ rtems_test_assert(
+ sysconf( _SC_NPROCESSORS_CONF )
+ == (long) rtems_configuration_get_maximum_processors()
+ );
+
+ rtems_test_assert(
+ sysconf( _SC_NPROCESSORS_ONLN ) == (long) rtems_get_processor_count()
+ );
+
#if defined(__sparc__)
/* Solaris _SC_STACK_PROT - 515 */
sc = sysconf( _SC_PAGESIZE );