Print this page
3830 SIGQUEUE_MAX's limit of 32 is too low
Reviewed by: Cedric Blancher <cedric.blancher@gmail.com>
Reviewed by: John Kennedy <john.kennedy@delphix.com>
Reviewed by: Irek Szczesniak <iszczesniak@gmail.com>
*** 45,54 ****
--- 45,56 ----
#include <sys/mman.h>
#include <sys/timer.h>
#include <sys/zone.h>
#include <sys/vm_usage.h>
+ extern rctl_hndl_t rc_process_sigqueue;
+
long
sysconfig(int which)
{
switch (which) {
*** 138,148 ****
case _CONFIG_SEM_VALUE_MAX:
return (_SEM_VALUE_MAX);
case _CONFIG_SIGQUEUE_MAX:
! return (_SIGQUEUE_MAX);
case _CONFIG_SIGRT_MIN:
return (_SIGRTMIN);
case _CONFIG_SIGRT_MAX:
--- 140,160 ----
case _CONFIG_SEM_VALUE_MAX:
return (_SEM_VALUE_MAX);
case _CONFIG_SIGQUEUE_MAX:
! /*
! * Maximum number of outstanding queued signals.
! */
! {
! rlim64_t sigqsz_max;
! mutex_enter(&curproc->p_lock);
! sigqsz_max = rctl_enforced_value(rc_process_sigqueue,
! curproc->p_rctls, curproc);
! mutex_exit(&curproc->p_lock);
! return ((uint_t)sigqsz_max);
! }
case _CONFIG_SIGRT_MIN:
return (_SIGRTMIN);
case _CONFIG_SIGRT_MAX: