Print this page
6141 use kmem_zalloc instead of kmem_alloc + bzero/memset

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/syscall/rctlsys.c
          +++ new/usr/src/uts/common/syscall/rctlsys.c
↓ open down ↓ 285 lines elided ↑ open up ↑
 286  286                  if (RCTLOP_NO_USAGE(rctl)) {
 287  287                          mutex_exit(&rset->rcs_lock);
 288  288                          mutex_exit(&curproc->p_lock);
 289  289                          kmem_free(krde, sizeof (rctl_dict_entry_t));
 290  290                          return (set_errno(ENOTSUP));
 291  291                  }
 292  292                  usage = RCTLOP_GET_USAGE(rctl, curproc);
 293  293                  mutex_exit(&rset->rcs_lock);
 294  294                  mutex_exit(&curproc->p_lock);
 295  295  
 296      -                nblk = kmem_alloc(sizeof (rctl_opaque_t), KM_SLEEP);
 297      -                bzero(nblk, sizeof (rctl_opaque_t));
      296 +                nblk = kmem_zalloc(sizeof (rctl_opaque_t), KM_SLEEP);
 298  297                  nblk->rcq_value = usage;
 299  298  
 300  299                  ret = copyout(nblk, new_rblk, sizeof (rctl_opaque_t));
 301  300                  kmem_free(nblk, sizeof (rctl_opaque_t));
 302  301                  kmem_free(krde, sizeof (rctl_dict_entry_t));
 303  302                  return (ret == 0 ? 0 : set_errno(EFAULT));
 304  303          } else if (action == RCTL_FIRST) {
 305  304  
 306  305                  mutex_enter(&curproc->p_lock);
 307  306                  if (ret = rctl_local_get(hndl, NULL, nval, curproc)) {
↓ open down ↓ 751 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX