[EMAIL PROTECTED] wrote on Mon, 12 Nov 2007 23:14 +0900:
> On Tue, 16 Oct 2007 11:20:21 -0400
> Pete Wyckoff <[EMAIL PROTECTED]> wrote:
>
> > Virtualize malloc and free when dealing with memory that the
> > transport will use. It must be per-connection for RDMA.
>
> I modified and merged this.
>
> As I said, we need aligned buffer for data transfer so I added
> alloc/free_data_buf to iscsi_transport.
This works well. Haven't looked at the timings yet, though.
> If you need pre-registered buffer for iscsi_task too (for sense, I
> guess), you can add alloc/free_task to iscsi_transport. But I think
> that you don't need to use pre-registered buffer for sense and you can
> register sense buffer when you need it.
Sense goes in response message, so is memcpy-ed to pre-registered
small packet areas. Only DATA_IN gets converted to RDMA write
and R2T to RDMA read. Everything else goes through a memcpy
currently.
Perhaps there is an optimization to avoid the copies, but it would
require managing conn->rx_buffer and tx_buffer and sense in a way
that is a bit invasive to core iscsid.c. I'm not going to try it.
-- Pete
_______________________________________________
Stgt-devel mailing list
[email protected]
https://lists.berlios.de/mailman/listinfo/stgt-devel