Lines Matching refs:link_idx
700 static int smc_ib_map_mr_sg(struct smc_buf_desc *buf_slot, u8 link_idx)
706 sg_num = ib_map_mr_sg(buf_slot->mr[link_idx],
707 buf_slot->sgt[link_idx].sgl,
708 buf_slot->sgt[link_idx].orig_nents,
716 struct smc_buf_desc *buf_slot, u8 link_idx)
718 if (buf_slot->mr[link_idx])
721 buf_slot->mr[link_idx] =
723 if (IS_ERR(buf_slot->mr[link_idx])) {
726 rc = PTR_ERR(buf_slot->mr[link_idx]);
727 buf_slot->mr[link_idx] = NULL;
731 if (smc_ib_map_mr_sg(buf_slot, link_idx) !=
732 buf_slot->sgt[link_idx].orig_nents)
746 for_each_sg(buf_slot->sgt[lnk->link_idx].sgl, sg,
747 buf_slot->sgt[lnk->link_idx].nents, i) {
769 if (!(buf_slot->is_dma_need_sync & (1U << lnk->link_idx)))
773 for_each_sg(buf_slot->sgt[lnk->link_idx].sgl, sg,
774 buf_slot->sgt[lnk->link_idx].nents, i) {
792 if (!(buf_slot->is_dma_need_sync & (1U << lnk->link_idx)))
796 for_each_sg(buf_slot->sgt[lnk->link_idx].sgl, sg,
797 buf_slot->sgt[lnk->link_idx].nents, i) {
815 buf_slot->sgt[lnk->link_idx].sgl,
816 buf_slot->sgt[lnk->link_idx].orig_nents,
828 if (!buf_slot->sgt[lnk->link_idx].sgl->dma_address)
832 buf_slot->sgt[lnk->link_idx].sgl,
833 buf_slot->sgt[lnk->link_idx].orig_nents,
835 buf_slot->sgt[lnk->link_idx].sgl->dma_address = 0;