Print this page
5253 kmem_alloc/kmem_zalloc won't fail with KM_SLEEP
5254 getrbuf won't fail with KM_SLEEP

Split Close
Expand all
Collapse all
          --- old/usr/src/uts/common/avs/ns/solaris/nsc_raw.c
          +++ new/usr/src/uts/common/avs/ns/solaris/nsc_raw.c
↓ open down ↓ 111 lines elided ↑ open up ↑
 112  112                  VN_RELE(vp);
 113  113  
 114  114          return (rdev);
 115  115  }
 116  116  
 117  117  int
 118  118  _nsc_init_raw(int maxdevs)
 119  119  {
 120  120          _nsc_raw_files =
 121  121              kmem_zalloc(sizeof (*_nsc_raw_files) * maxdevs, KM_SLEEP);
 122      -        if (!_nsc_raw_files)
 123      -                return (ENOMEM);
 124  122  
 125  123          _nsc_raw_maxdevs = maxdevs;
 126  124          _nsc_raw_majors = NULL;
 127  125  
 128  126          mutex_init(&_nsc_raw_lock, NULL, MUTEX_DRIVER, NULL);
 129  127          return (0);
 130  128  }
 131  129  
 132  130  
 133  131  void
↓ open down ↓ 163 lines elided ↑ open up ↑
 297  295                  return (ENXIO);
 298  296          }
 299  297  
 300  298          if (_nsc_raw_maxdevs == 0) {
 301  299                  cmn_err(CE_WARN, "nskern: _raw_open() before _nsc_init_raw()!");
 302  300                  return (ENXIO);
 303  301          }
 304  302  
 305  303          plen = strlen(path) + 1;
 306  304          spath = kmem_alloc(plen, KM_SLEEP);
 307      -        if (spath == NULL) {
 308      -                cmn_err(CE_WARN,
 309      -                    "nskern: unable to alloc memory in _raw_open()");
 310      -                return (ENOMEM);
 311      -        }
 312  305  
 313  306          (void) strcpy(spath, path);
 314  307  
 315  308          /*
 316  309           * Lookup the vnode to extract the dev_t info,
 317  310           * then release the vnode.
 318  311           */
 319  312          if ((rdev = ldi_get_dev_t_from_path(path)) == 0) {
 320  313                  kmem_free(spath, plen);
 321  314                  return (ENXIO);
↓ open down ↓ 532 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX