From 85566e032db4a30a5838dc54d6d7b285a4e2c3ff Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=A9r=C3=B4me=20Duval?= Date: Tue, 21 Feb 2017 20:15:45 +0100 Subject: [PATCH] posix: add _POSIX_SEM_NSEMS_MAX. * have _SC__SEM_NSEMS_MAX return _POSIX_SEM_NSEMS_MAX, a per team limit instead of the global limit. --- headers/posix/limits.h | 1 + headers/private/system/posix/realtime_sem_defs.h | 4 ++-- src/system/libroot/posix/unistd/conf.cpp | 2 +- 3 files changed, 4 insertions(+), 3 deletions(-) diff --git a/headers/posix/limits.h b/headers/posix/limits.h index cdd95283f8..d2699a1498 100644 --- a/headers/posix/limits.h +++ b/headers/posix/limits.h @@ -72,6 +72,7 @@ #define _POSIX_CLOCKRES_MIN 20000000 #define _POSIX_TIMER_MAX 32 #define _POSIX_DELAYTIMER_MAX 32 +#define _POSIX_SEM_NSEMS_MAX (128) #define _POSIX2_LINE_MAX (2048) diff --git a/headers/private/system/posix/realtime_sem_defs.h b/headers/private/system/posix/realtime_sem_defs.h index 4e1dd53af0..80b625887c 100644 --- a/headers/private/system/posix/realtime_sem_defs.h +++ b/headers/private/system/posix/realtime_sem_defs.h @@ -6,10 +6,10 @@ #define SYSTEM_REALTIME_SEM_H -#include +#include -#define MAX_POSIX_SEMS_PER_TEAM 128 +#define MAX_POSIX_SEMS_PER_TEAM _POSIX_SEM_NSEMS_MAX #define MAX_POSIX_SEMS 1024 #define MAX_POSIX_SEM_VALUE _POSIX_SEM_VALUE_MAX diff --git a/src/system/libroot/posix/unistd/conf.cpp b/src/system/libroot/posix/unistd/conf.cpp index 5ae51e9f68..8b40bd9f0b 100644 --- a/src/system/libroot/posix/unistd/conf.cpp +++ b/src/system/libroot/posix/unistd/conf.cpp @@ -90,7 +90,7 @@ __sysconf(int name) case _SC_PAGE_SIZE: return B_PAGE_SIZE; case _SC_SEM_NSEMS_MAX: - return MAX_POSIX_SEMS; + return _POSIX_SEM_NSEMS_MAX; case _SC_SEM_VALUE_MAX: return _POSIX_SEM_VALUE_MAX; case _SC_SEMAPHORES: