> -----Original Message----- > From: Sagi Grimberg [mailto:sagig@xxxxxxxxxxxxxxxxxx] > Sent: Tuesday, March 01, 2016 3:20 AM > To: Christoph Hellwig > Cc: Steve Wise; linux-rdma@xxxxxxxxxxxxxxx; sagig@xxxxxxxxxxxx; bart.vanassche@xxxxxxxxxxx; target-devel@xxxxxxxxxxxxxxx > Subject: Re: [PATCH 7/9] IB/core: generic RDMA READ/WRITE API > > > >>>> + if (rdma_rw_use_mr(qp->device, port_num)) { > >>>> + ret = rdma_rw_init_mr_wrs(ctx, qp, port_num, sg, sg_offset, > >>>> + remote_addr, rkey, dir); > >>> > >>> At some point I would like the iWARP IO to do no-mr for WRITE/dma_nents > >>> == 1, and WRITE/dma_nents <= max_send_sge for the device. I think this > >>> will help smaller iSER/NVMEF READ IOPs. I'm testing this out now on the > >>> NVMEF code, which is slightly different. If it proves out to better the > >>> performance, I'll post a follow-on patch... > >> > >> Is this possible given that pd->local_dma_lkey has only local > >> permissions? > > > > I think he means NVMe / SCSI READ commands, which use RDMA WRITE. > > For NVMe / SCSI WRITE commands that use RDMA READ all bets are off > > for iWarp, but at least it supports READ W/ INVALIDATE. > > I interpreted "no-mr for WRITE/dma_nents == 1" as either RDMA_WRITE of > RDMA_READ with a single dma entry (and that part I didn't understand). I mean for iWARP, we can do RDMA WRITE operations w/o a MR, if the ib_sge is small enough given the device max send depth. -- To unsubscribe from this list: send the line "unsubscribe target-devel" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html