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/io/fibre-channel/fca/qlc/ql_mbx.c
          +++ new/usr/src/uts/common/io/fibre-channel/fca/qlc/ql_mbx.c
↓ open down ↓ 1269 lines elided ↑ open up ↑
1270 1270      uint32_t flags, uint16_t delay)
1271 1271  {
1272 1272          ql_mbx_iocb_t   *pkt;
1273 1273          int             rval;
1274 1274          uint32_t        pkt_size;
1275 1275  
1276 1276          QL_PRINT_3(CE_CONT, "(%d): started\n", ha->instance);
1277 1277  
1278 1278          pkt_size = sizeof (ql_mbx_iocb_t);
1279 1279          pkt = kmem_zalloc(pkt_size, KM_SLEEP);
1280      -        if (pkt == NULL) {
1281      -                EL(ha, "failed, kmem_zalloc\n");
1282      -                return (QL_MEMORY_ALLOC_FAILED);
1283      -        }
1284 1280  
1285 1281          pkt->mgmt.entry_type = TASK_MGMT_TYPE;
1286 1282          pkt->mgmt.entry_count = 1;
1287 1283  
1288 1284          pkt->mgmt.n_port_hdl = (uint16_t)LE_16(tq->loop_id);
1289 1285          pkt->mgmt.delay = (uint16_t)LE_16(delay);
1290 1286          pkt->mgmt.timeout = LE_16(MAILBOX_TOV);
1291 1287          pkt->mgmt.fcp_lun[2] = LSB(lun);
1292 1288          pkt->mgmt.fcp_lun[3] = MSB(lun);
1293 1289          pkt->mgmt.control_flags = LE_32(flags);
↓ open down ↓ 346 lines elided ↑ open up ↑
1640 1636      uint16_t flags, ql_mbx_data_t *mr)
1641 1637  {
1642 1638          ql_mbx_iocb_t   *pkt;
1643 1639          int             rval;
1644 1640          uint32_t        pkt_size;
1645 1641  
1646 1642          QL_PRINT_3(CE_CONT, "(%d): started\n", ha->instance);
1647 1643  
1648 1644          pkt_size = sizeof (ql_mbx_iocb_t);
1649 1645          pkt = kmem_zalloc(pkt_size, KM_SLEEP);
1650      -        if (pkt == NULL) {
1651      -                EL(ha, "failed, kmem_zalloc\n");
1652      -                return (QL_MEMORY_ALLOC_FAILED);
1653      -        }
1654 1646  
1655 1647          pkt->log.entry_type = LOG_TYPE;
1656 1648          pkt->log.entry_count = 1;
1657 1649          pkt->log.n_port_hdl = (uint16_t)LE_16(loop_id);
1658 1650          pkt->log.control_flags = (uint16_t)LE_16(flags);
1659 1651          pkt->log.port_id[0] = tq->d_id.b.al_pa;
1660 1652          pkt->log.port_id[1] = tq->d_id.b.area;
1661 1653          pkt->log.port_id[2] = tq->d_id.b.domain;
1662 1654          pkt->log.vp_index = ha->vp_index;
1663 1655  
↓ open down ↓ 1024 lines elided ↑ open up ↑
2688 2680  {
2689 2681          ql_mbx_iocb_t   *pkt;
2690 2682          int             rval;
2691 2683          uint32_t        pkt_size;
2692 2684          uint16_t        comp_status;
2693 2685          ql_tgt_t        *tq = sp->lun_queue->target_queue;
2694 2686  
2695 2687          QL_PRINT_3(CE_CONT, "(%d): started\n", ha->instance);
2696 2688  
2697 2689          pkt_size = sizeof (ql_mbx_iocb_t);
2698      -        if ((pkt = kmem_zalloc(pkt_size, KM_SLEEP)) == NULL) {
2699      -                EL(ha, "failed, kmem_zalloc\n");
2700      -                return (QL_MEMORY_ALLOC_FAILED);
2701      -        }
     2690 +        pkt = kmem_zalloc(pkt_size, KM_SLEEP);
2702 2691  
2703 2692          pkt->abo.entry_type = ABORT_CMD_TYPE;
2704 2693          pkt->abo.entry_count = 1;
2705 2694          pkt->abo.n_port_hdl = (uint16_t)LE_16(tq->loop_id);
2706 2695          if (!CFG_IST(ha, CFG_CTRL_8021)) {
2707 2696                  pkt->abo.options = AF_NO_ABTS;
2708 2697          }
2709 2698          pkt->abo.cmd_handle = LE_32(sp->handle);
2710 2699          pkt->abo.target_id[0] = tq->d_id.b.al_pa;
2711 2700          pkt->abo.target_id[1] = tq->d_id.b.area;
↓ open down ↓ 2154 lines elided ↑ open up ↑
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX