Print this page
NEX-1974 Support for more than 16 groups with AUTH_SYS
Reviewed by: Gordon Ross <gordon.ross@nexenta.com>
Reviewed by: Josef 'Jeff' Sipek <josef.sipek@nexenta.com>
re #13613 rb4516 Tunables needs volatile keyword

*** 64,73 **** --- 64,74 ---- #include <sys/fdbuffer.h> #include <sys/cyclic_impl.h> #include <sys/disp.h> #include <sys/tuneable.h> #include <sys/systeminfo.h> + #include <rpc/auth_sys.h> #include <sys/vmem.h> #include <sys/clock.h> #include <sys/clock_impl.h> #include <sys/serializer.h>
*** 157,167 **** #define HIRES_HZ_DEFAULT 1000 int hz = HZ_DEFAULT; int hires_hz = HIRES_HZ_DEFAULT; ! int hires_tick = 0; int cpu_decay_factor = 10; /* this is no longer tied to clock */ int max_hres_adj; /* maximum adjustment of hrtime per tick */ int tick_per_msec; /* clock ticks per millisecond (zero if hz < 1000) */ /* --- 158,168 ---- #define HIRES_HZ_DEFAULT 1000 int hz = HZ_DEFAULT; int hires_hz = HIRES_HZ_DEFAULT; ! volatile int hires_tick = 0; int cpu_decay_factor = 10; /* this is no longer tied to clock */ int max_hres_adj; /* maximum adjustment of hrtime per tick */ int tick_per_msec; /* clock ticks per millisecond (zero if hz < 1000) */ /*
*** 265,281 **** cu_init, callout_mp_init, 0 }; ! int maxusers; /* kitchen-sink knob for dynamic configuration */ /* * pidmax -- highest pid value assigned by the system * Settable in /etc/system */ ! int pidmax = DEFAULT_MAXPID; /* * jump_pid - if set, this value is where pid numbers should start * after the first few system pids (0-3) are used. If 0, pids are * chosen in the usual way. This variable can be used to quickly --- 266,282 ---- cu_init, callout_mp_init, 0 }; ! volatile int maxusers; /* kitchen-sink knob for dynamic configuration */ /* * pidmax -- highest pid value assigned by the system * Settable in /etc/system */ ! volatile int pidmax = DEFAULT_MAXPID; /* * jump_pid - if set, this value is where pid numbers should start * after the first few system pids (0-3) are used. If 0, pids are * chosen in the usual way. This variable can be used to quickly
*** 287,321 **** /* * autoup -- used in struct var for dynamic config of the age a delayed-write * buffer must be in seconds before bdflush will write it out. */ #define DEFAULT_AUTOUP 30 ! int autoup = DEFAULT_AUTOUP; /* * bufhwm -- tuneable variable for struct var for v_bufhwm. * high water mark for buffer cache mem usage in units of K bytes. * * bufhwm_pct -- ditto, but given in % of physmem. */ ! int bufhwm = 0; ! int bufhwm_pct = 0; /* * Process table. */ int maxpid; ! int max_nprocs; /* set in param_init() */ ! int maxuprc; /* set in param_init() */ ! int reserved_procs; int nthread = 1; /* * UFS tunables */ ! int ufs_ninode; /* declared here due to backwards compatibility */ ! int ndquot; /* declared here due to backwards compatibility */ /* * Exec switch table. This is used by the generic exec module * to switch out to the desired executable type, based on the * magic number. The currently supported types are ELF, a.out --- 288,322 ---- /* * autoup -- used in struct var for dynamic config of the age a delayed-write * buffer must be in seconds before bdflush will write it out. */ #define DEFAULT_AUTOUP 30 ! volatile int autoup = DEFAULT_AUTOUP; /* * bufhwm -- tuneable variable for struct var for v_bufhwm. * high water mark for buffer cache mem usage in units of K bytes. * * bufhwm_pct -- ditto, but given in % of physmem. */ ! volatile int bufhwm = 0; ! volatile int bufhwm_pct = 0; /* * Process table. */ int maxpid; ! volatile int max_nprocs; /* set in param_init() */ ! volatile int maxuprc; /* set in param_init() */ ! volatile int reserved_procs; int nthread = 1; /* * UFS tunables */ ! volatile int ufs_ninode; /* declared here due to backwards compatibility */ ! volatile int ndquot; /* declared here due to backwards compatibility */ /* * Exec switch table. This is used by the generic exec module * to switch out to the desired executable type, based on the * magic number. The currently supported types are ELF, a.out
*** 408,436 **** * simple via /etc/system */ #define RLIM_FD_CUR 0x10000 #define RLIM_FD_MAX 0x10000 ! uint_t rlim_fd_cur = RLIM_FD_CUR; ! uint_t rlim_fd_max = RLIM_FD_MAX; /* * (Default resource limits were formerly declared here, but are now provided by * the more general resource controls framework.) */ /* * STREAMS tunables */ ! int nstrpush = 9; /* maximum # of modules/drivers on a stream */ ! ssize_t strctlsz = 1024; /* maximum size of user-generated M_PROTO */ ! ssize_t strmsgsz = 0x10000; /* maximum size of user-generated M_DATA */ /* for `strmsgsz', zero means unlimited */ /* * Filesystem tunables */ ! int rstchown = 1; /* POSIX_CHOWN_RESTRICTED is enabled */ int ngroups_max = NGROUPS_MAX_DEFAULT; /* * generic scheduling stuff * --- 409,437 ---- * simple via /etc/system */ #define RLIM_FD_CUR 0x10000 #define RLIM_FD_MAX 0x10000 ! volatile uint_t rlim_fd_cur = RLIM_FD_CUR; ! volatile uint_t rlim_fd_max = RLIM_FD_MAX; /* * (Default resource limits were formerly declared here, but are now provided by * the more general resource controls framework.) */ /* * STREAMS tunables */ ! volatile int nstrpush = 9; /* maximum # of modules/drivers on a stream */ ! volatile ssize_t strctlsz = 1024; /* maximum size of user-generated M_PROTO */ ! volatile ssize_t strmsgsz = 0x10000; /* maximum size of user-generated M_DATA */ /* for `strmsgsz', zero means unlimited */ /* * Filesystem tunables */ ! volatile int rstchown = 1; /* POSIX_CHOWN_RESTRICTED is enabled */ int ngroups_max = NGROUPS_MAX_DEFAULT; /* * generic scheduling stuff *
*** 484,500 **** /* * Rate at which fsflush is run, in seconds. */ #define DEFAULT_TUNE_T_FSFLUSHR 1 ! int tune_t_fsflushr = DEFAULT_TUNE_T_FSFLUSHR; /* * The minimum available resident (not swappable) memory to maintain * in order to avoid deadlock. In pages. */ ! int tune_t_minarmem = 25; /* * The minimum available swappable memory to maintain in order to avoid * deadlock. In pages. */ --- 485,501 ---- /* * Rate at which fsflush is run, in seconds. */ #define DEFAULT_TUNE_T_FSFLUSHR 1 ! volatile int tune_t_fsflushr = DEFAULT_TUNE_T_FSFLUSHR; /* * The minimum available resident (not swappable) memory to maintain * in order to avoid deadlock. In pages. */ ! volatile int tune_t_minarmem = 25; /* * The minimum available swappable memory to maintain in order to avoid * deadlock. In pages. */
*** 505,515 **** /* * Number of currently available pages that cannot be 'locked' * This is set in init_pages_pp_maximum, and must be initialized * to zero here to detect an override in /etc/system */ ! pgcnt_t pages_pp_maximum = 0; int boothowto; /* boot flags passed to kernel */ struct var v; /* System Configuration Information */ /* --- 506,516 ---- /* * Number of currently available pages that cannot be 'locked' * This is set in init_pages_pp_maximum, and must be initialized * to zero here to detect an override in /etc/system */ ! volatile pgcnt_t pages_pp_maximum = 0; int boothowto; /* boot flags passed to kernel */ struct var v; /* System Configuration Information */ /*