IB/iser: add unlikely checks in the fast path
authorMax Gurtovoy <maxg@mellanox.com>
Mon, 23 Sep 2019 21:32:49 +0000 (00:32 +0300)
committerJason Gunthorpe <jgg@mellanox.com>
Tue, 1 Oct 2019 14:23:22 +0000 (11:23 -0300)
ib_post_send, ib_post_recv and ib_dma_map_sg  operations should succeed
unless something unusual happened to the ib device.

Link: https://lore.kernel.org/r/1569274369-29217-1-git-send-email-maxg@mellanox.com
Signed-off-by: Max Gurtovoy <maxg@mellanox.com>
Acked-by: Sagi Grimberg <sagi@grimberg.me>
Signed-off-by: Jason Gunthorpe <jgg@mellanox.com>
drivers/infiniband/ulp/iser/iser_memory.c
drivers/infiniband/ulp/iser/iser_verbs.c

index 2cc89a9..3a26e5b 100644 (file)
@@ -170,7 +170,7 @@ int iser_dma_map_task_data(struct iscsi_iser_task *iser_task,
        dev = iser_task->iser_conn->ib_conn.device->ib_device;
 
        data->dma_nents = ib_dma_map_sg(dev, data->sg, data->size, dma_dir);
-       if (data->dma_nents == 0) {
+       if (unlikely(data->dma_nents == 0)) {
                iser_err("dma_map_sg failed!!!\n");
                return -EINVAL;
        }
index a6548de..94b5011 100644 (file)
@@ -1019,7 +1019,7 @@ int iser_post_recvm(struct iser_conn *iser_conn, int count)
 
        ib_conn->post_recv_buf_count += count;
        ib_ret = ib_post_recv(ib_conn->qp, ib_conn->rx_wr, NULL);
-       if (ib_ret) {
+       if (unlikely(ib_ret)) {
                iser_err("ib_post_recv failed ret=%d\n", ib_ret);
                ib_conn->post_recv_buf_count -= count;
        } else
@@ -1060,7 +1060,7 @@ int iser_post_send(struct ib_conn *ib_conn, struct iser_tx_desc *tx_desc,
                first_wr = wr;
 
        ib_ret = ib_post_send(ib_conn->qp, first_wr, NULL);
-       if (ib_ret)
+       if (unlikely(ib_ret))
                iser_err("ib_post_send failed, ret:%d opcode:%d\n",
                         ib_ret, wr->opcode);