+ pbe = (struct regpair *)pbl_table->va; + num_pbes = 0; + + for (i = 0; i < mr->npages && + (total_num_pbes != mr->info.pbl_info.num_pbes); i++) { + u64 buf_addr = mr->pages[i]; + + pbe->lo = cpu_to_le32((u32)buf_addr); + pbe->hi = cpu_to_le32((u32)upper_32_bits(buf_addr));
Thats a shame... you could have easily set the buf_addr correctly in qedr_set_page... I think you could have also set the pbe directly from set_page if you have access to pbl_table from your mr context (and if I understand correctly I think you do, mr->info.pbl_table)...