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/fs/nfs/nfs_sys.c
          +++ new/usr/src/uts/common/fs/nfs/nfs_sys.c
↓ open down ↓ 335 lines elided ↑ open up ↑
 336  336                          return (set_errno(ENOTSUP));
 337  337  
 338  338                  /*
 339  339                   * NFS4_DSS_SETPATHS_SIZE must be called before
 340  340                   * NFS4_DSS_SETPATHS, to tell us how big a buffer we need
 341  341                   * to allocate.
 342  342                   */
 343  343                  if (nfs4_dss_buflen == 0)
 344  344                          return (set_errno(EINVAL));
 345  345                  nfs4_dss_bufp = kmem_alloc(nfs4_dss_buflen, KM_SLEEP);
 346      -                if (nfs4_dss_bufp == NULL)
 347      -                        return (set_errno(ENOMEM));
 348  346  
 349  347                  if (copyin(arg, nfs4_dss_bufp, nfs4_dss_buflen)) {
 350  348                          kmem_free(nfs4_dss_bufp, nfs4_dss_buflen);
 351  349                          return (set_errno(EFAULT));
 352  350                  }
 353  351  
 354  352                  /* unpack the buffer and extract the pathnames */
 355  353                  error = nfs_srv_dss_func(nfs4_dss_bufp, nfs4_dss_buflen);
 356  354                  kmem_free(nfs4_dss_bufp, nfs4_dss_buflen);
 357  355  
↓ open down ↓ 53 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX