rctl_t
rctl_t **rctls;
rctls = mdb_alloc(hashsz * sizeof (rctl_t *), UM_SLEEP);
if (mdb_vread(rctls, hashsz * sizeof (rctl_t *),
mdb_free(rctls, hashsz * sizeof (rctl_t *));
rctl_t rctl;
if (mdb_vread(&rctl, sizeof (rctl_t), wsp->walk_addr) == -1) {
mdb_free(sd->hashloc, sd->hashsize * sizeof (rctl_t *));
rctl_t rctl;
if (mdb_vread(&rctl, sizeof (rctl_t), wsp->walk_addr) == -1) {
rctl_t r;
if (mdb_vread(&r, sizeof (rctl_t), addr) != sizeof (rctl_t)) {
rctl_t rctl;
if (mdb_vread(&rctl, sizeof (rctl_t), addr) == -1) {
project_cpu_shares_usage(rctl_t *rctl, struct proc *p)
project_cpu_shares_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
project_cpu_cap_get(rctl_t *rctl, struct proc *p)
project_cpu_cap_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
project_lwps_usage(rctl_t *r, proc_t *p)
project_lwps_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e, rctl_val_t *rcntl,
project_lwps_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
project_procs_usage(rctl_t *r, proc_t *p)
project_procs_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e, rctl_val_t *rcntl,
project_procs_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
project_ntasks_usage(rctl_t *r, proc_t *p)
project_ntasks_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e, rctl_val_t *rcntl,
project_ntasks_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
project_shmmax_usage(rctl_t *rctl, struct proc *p)
project_shmmni_usage(rctl_t *rctl, struct proc *p)
project_semmni_usage(rctl_t *rctl, struct proc *p)
project_msgmni_usage(rctl_t *rctl, struct proc *p)
project_locked_mem_usage(rctl_t *rctl, struct proc *p)
project_locked_mem_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
project_crypto_usage(rctl_t *r, proc_t *p)
project_crypto_set(rctl_t *r, proc_t *p, rctl_entity_p_t *e,
project_crypto_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e,
rset->rcs_ctls = kmem_zalloc(rctl_set_size * sizeof (rctl_t *),
rctl_t *rctl = rctl_gp_detach_ctl(ragp);
static rctl_t *
rctl_dup(rctl_t *rctl, rctl_alloc_gp_t *ragp, struct proc *oldp,
rctl_t *dup = rctl_gp_detach_ctl(ragp);
rctl_t *r = set->rcs_ctls[i];
rctl_t *r = iter->rcs_ctls[i];
rctl_t *d;
rctl_t *r = set->rcs_ctls[i];
rctl_t *n = r->rc_next;
kmem_free(set->rcs_ctls, sizeof (rctl_t *) * rctl_set_size);
rctl_t *r = set->rcs_ctls[i];
rctl_t *r = set->rcs_ctls[i];
rctl_set_find(rctl_set_t *set, rctl_hndl_t hndl, rctl_t **rctl)
rctl_t *curr_ctl;
rctl_t *rctl;
int (*cbop)(rctl_hndl_t, struct proc *p, rctl_entity_p_t *e, rctl_t *,
rctl_t *rctl;
rctl_t *rctl, rctl_val_t *oval, rctl_val_t *nval)
rctl_t *rctl, rctl_val_t *oval, rctl_val_t *nval)
rctl_t *rctl, rctl_val_t *oval, rctl_val_t *nval)
rctl_t *rctl, rctl_val_t *new_values, rctl_val_t *alloc_values)
rctl_t *rctl, rctl_val_t *new_values, rctl_val_t *alloc_values)
rctl_t *rctl, rctl_val_t *oval, rctl_val_t *nval)
rctl_t *rctl;
rctl_t *rctl;
rctl_t *rctl = kmem_cache_alloc(rctl_cache, KM_SLEEP);
rctl_t *old_rctl;
bzero(rctl, sizeof (rctl_t));
rctl_global_action(rctl_t *r, rctl_set_t *rset, struct proc *p, rctl_val_t *v)
rctl_local_action(rctl_t *r, rctl_set_t *rset, struct proc *p, rctl_val_t *v,
rctl_t *lrctl;
rctl_t *lrctl;
rctl_cache = kmem_cache_create("rctl_cache", sizeof (rctl_t),
rctl_t *prev = kmem_cache_alloc(rctl_cache, KM_SLEEP);
rctl_t *rctl = prev;
static rctl_t *
rctl_t *rctl = rcgp->rcag_ctls;
rctl_t *rctl = rcgp->rcag_ctls;
rctl_t *next = rctl->rc_next;
rctl_set_insert(rctl_set_t *set, rctl_hndl_t hndl, rctl_t *rctl)
rctl_t *next_ctl, *prev_ctl;
proc_stack_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
proc_nofile_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e, rctl_qty_t nv)
proc_vmem_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e, rctl_qty_t nv)
proc_filesize_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
task_lwps_usage(rctl_t *r, proc_t *p)
task_lwps_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e, rctl_val_t *rcntl,
task_lwps_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e, rctl_qty_t nv) {
task_nprocs_usage(rctl_t *r, proc_t *p)
task_nprocs_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e, rctl_val_t *rcntl,
task_nprocs_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
task_cpu_time_usage(rctl_t *r, proc_t *p)
task_cpu_time_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e,
zone_cpu_shares_usage(rctl_t *rctl, struct proc *p)
zone_cpu_shares_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
zone_cpu_cap_get(rctl_t *rctl, struct proc *p)
zone_cpu_cap_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
zone_lwps_usage(rctl_t *r, proc_t *p)
zone_lwps_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e, rctl_val_t *rcntl,
zone_lwps_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e, rctl_qty_t nv)
zone_procs_usage(rctl_t *r, proc_t *p)
zone_procs_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e, rctl_val_t *rcntl,
zone_procs_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e, rctl_qty_t nv)
zone_shmmax_usage(rctl_t *rctl, struct proc *p)
zone_shmmax_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e, rctl_val_t *rval,
zone_shmmni_usage(rctl_t *rctl, struct proc *p)
zone_shmmni_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e, rctl_val_t *rval,
zone_semmni_usage(rctl_t *rctl, struct proc *p)
zone_semmni_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e, rctl_val_t *rval,
zone_msgmni_usage(rctl_t *rctl, struct proc *p)
zone_msgmni_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e, rctl_val_t *rval,
zone_locked_mem_usage(rctl_t *rctl, struct proc *p)
zone_locked_mem_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e,
zone_locked_mem_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
zone_max_swap_usage(rctl_t *rctl, struct proc *p)
zone_max_swap_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e,
zone_max_swap_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
zone_max_lofi_usage(rctl_t *rctl, struct proc *p)
zone_max_lofi_test(rctl_t *r, proc_t *p, rctl_entity_p_t *e,
zone_max_lofi_set(rctl_t *rctl, struct proc *p, rctl_entity_p_t *e,
rctl_t **rcs_ctls; /* hash table of controls */
rctl_t *rcag_ctls; /* list of allocated rctls */
int rctl_set_find(rctl_set_t *, rctl_hndl_t, rctl_t **);
rctl_t *rctl;