We can call the function to get fifo list. Signed-off-by: Guoqing Jiang <guoqing.jiang@xxxxxxxxx> --- drivers/infiniband/sw/siw/siw_qp_tx.c | 12 +----------- 1 file changed, 1 insertion(+), 11 deletions(-) diff --git a/drivers/infiniband/sw/siw/siw_qp_tx.c b/drivers/infiniband/sw/siw/siw_qp_tx.c index 4b292e0504f1..eb3d438828e2 100644 --- a/drivers/infiniband/sw/siw/siw_qp_tx.c +++ b/drivers/infiniband/sw/siw/siw_qp_tx.c @@ -1229,17 +1229,7 @@ int siw_run_sq(void *data) break; active = llist_del_all(&tx_task->active); - /* - * llist_del_all returns a list with newest entry first. - * Re-order list for fairness among QP's. - */ - while (active) { - struct llist_node *tmp = active; - - active = llist_next(active); - tmp->next = fifo_list; - fifo_list = tmp; - } + fifo_list = llist_reverse_order(active); while (fifo_list) { qp = container_of(fifo_list, struct siw_qp, tx_list); fifo_list = llist_next(fifo_list); -- 2.35.3