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/os/sunddi.c
          +++ new/usr/src/uts/common/os/sunddi.c
↓ open down ↓ 5530 lines elided ↑ open up ↑
5531 5531          }
5532 5532  
5533 5533          i_ddi_di_cache_invalidate();
5534 5534  
5535 5535          ev = sysevent_alloc(EC_DEVFS, ESC_DEVFS_MINOR_REMOVE, EP_DDI, SE_SLEEP);
5536 5536          if (ev == NULL) {
5537 5537                  return (DDI_SUCCESS);
5538 5538          }
5539 5539  
5540 5540          pathname = kmem_alloc(MAXPATHLEN, KM_SLEEP);
5541      -        if (pathname == NULL) {
5542      -                sysevent_free(ev);
5543      -                return (DDI_SUCCESS);
5544      -        }
5545 5541  
5546 5542          (void) ddi_pathname(dip, pathname);
5547 5543          ASSERT(strlen(pathname));
5548 5544          se_val.value_type = SE_DATA_TYPE_STRING;
5549 5545          se_val.value.sv_string = pathname;
5550 5546          if (sysevent_add_attr(&ev_attr_list, DEVFS_PATHNAME,
5551 5547              &se_val, SE_SLEEP) != 0) {
5552 5548                  kmem_free(pathname, MAXPATHLEN);
5553 5549                  sysevent_free(ev);
5554 5550                  return (DDI_SUCCESS);
↓ open down ↓ 2234 lines elided ↑ open up ↑
7789 7785                  if (id != NULL)
7790 7786                          return (DDI_FAILURE);
7791 7787                  nbytes = sizeof (int) +
7792 7788                      sizeof (struct timeval32) + sizeof (short);
7793 7789                  sz += nbytes;
7794 7790                  break;
7795 7791          default:
7796 7792                  return (DDI_FAILURE);
7797 7793          }
7798 7794  
7799      -        if ((i_devid = kmem_zalloc(sz, KM_SLEEP)) == NULL)
7800      -                return (DDI_FAILURE);
     7795 +        i_devid = kmem_zalloc(sz, KM_SLEEP);
7801 7796  
7802 7797          i_devid->did_magic_hi = DEVID_MAGIC_MSB;
7803 7798          i_devid->did_magic_lo = DEVID_MAGIC_LSB;
7804 7799          i_devid->did_rev_hi = DEVID_REV_MSB;
7805 7800          i_devid->did_rev_lo = DEVID_REV_LSB;
7806 7801          DEVID_FORMTYPE(i_devid, devid_type);
7807 7802          DEVID_FORMLEN(i_devid, nbytes);
7808 7803  
7809 7804          /* Fill in driver name hint */
7810 7805          driver_name = ddi_driver_name(dip);
↓ open down ↓ 2214 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX