IB/hfi1: Remove unnecessary if check
authorJan Sokolowski <jan.sokolowski@intel.com>
Mon, 6 Nov 2017 14:38:45 +0000 (06:38 -0800)
committerDoug Ledford <dledford@redhat.com>
Mon, 13 Nov 2017 20:53:57 +0000 (15:53 -0500)
A for loop condition of data_iovs in user_sdma_free_request
is unnecessarily repeated before the loop as an if check.

Remove the if enveloping the loop.

Reviewed-by: Jakub Byczkowski <jakub.byczkowski@intel.com>
Signed-off-by: Jan Sokolowski <jan.sokolowski@intel.com>
Signed-off-by: Dennis Dalessandro <dennis.dalessandro@intel.com>
Signed-off-by: Doug Ledford <dledford@redhat.com>
drivers/infiniband/hw/hfi1/user_sdma.c

index 01b9a9c6c2af1f58bb0d8b1450c08a7dc6b595d6..833d0b7277bcf4fb56260fb30e88abe6fba316ac 100644 (file)
@@ -1428,6 +1428,8 @@ static inline void pq_update(struct hfi1_user_sdma_pkt_q *pq)
 
 static void user_sdma_free_request(struct user_sdma_request *req, bool unpin)
 {
+       int i;
+
        if (!list_empty(&req->txps)) {
                struct sdma_txreq *t, *p;
 
@@ -1439,22 +1441,20 @@ static void user_sdma_free_request(struct user_sdma_request *req, bool unpin)
                        kmem_cache_free(req->pq->txreq_cache, tx);
                }
        }
-       if (req->data_iovs) {
-               struct sdma_mmu_node *node;
-               int i;
-
-               for (i = 0; i < req->data_iovs; i++) {
-                       node = req->iovs[i].node;
-                       if (!node)
-                               continue;
-
-                       if (unpin)
-                               hfi1_mmu_rb_remove(req->pq->handler,
-                                                  &node->rb);
-                       else
-                               atomic_dec(&node->refcount);
-               }
+
+       for (i = 0; i < req->data_iovs; i++) {
+               struct sdma_mmu_node *node = req->iovs[i].node;
+
+               if (!node)
+                       continue;
+
+               if (unpin)
+                       hfi1_mmu_rb_remove(req->pq->handler,
+                                          &node->rb);
+               else
+                       atomic_dec(&node->refcount);
        }
+
        kfree(req->tids);
        clear_bit(req->info.comp_idx, req->pq->req_in_use);
 }