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 */
/*