hc
2024-05-14 bedbef8ad3e75a304af6361af235302bcc61d06b
kernel/drivers/infiniband/sw/siw/siw_qp_tx.c
....@@ -29,7 +29,7 @@
2929 dma_addr_t paddr = siw_pbl_get_buffer(pbl, offset, NULL, idx);
3030
3131 if (paddr)
32
- return virt_to_page((void *)paddr);
32
+ return virt_to_page((void *)(uintptr_t)paddr);
3333
3434 return NULL;
3535 }
....@@ -548,7 +548,7 @@
548548 data_len -= plen;
549549 fp_off = 0;
550550
551
- if (++seg > (int)MAX_ARRAY) {
551
+ if (++seg >= (int)MAX_ARRAY) {
552552 siw_dbg_qp(tx_qp(c_tx), "to many fragments\n");
553553 siw_unmap_pages(page_array, kmap_mask);
554554 wqe->processed -= c_tx->bytes_unsent;