Re: [PATCH 0/7] Enable iSCSI offload drivers to use information from iface.
From: Chris Leech
Date: Wed Jun 07 2017 - 12:28:50 EST
On Tue, Jun 06, 2017 at 12:07:10PM -0600, Robert LeBlanc wrote:
> This patchset enables iSCSI offload drivers to have access to the iface
> information provided by iscsid. This allows users to have more control
> of how the driver connects to the iSCSI target. iSER is updated to use
> iface.ipaddress to set the source IP address if configured. This allows
> iSER to use multiple ports on the same network or in more complicated
> routed configurations.
>
> Since there is already a change to the function parameters, dst_addr
> is upgraded to sockaddr_storage so that it is more future proof and makes
> the size of the struct static and not dependent on checking the SA_FAMILY.
>
> This is dependent on updates to Open-iSCSI.
Hi Robert,
I don't think that passing the iface_rec structure directly from the
iscsid internals into a netlink message is a good way to go about this.
It's really big, there's an embedded list_head with user address
pointers that needs to be left out, and there are 32/64-bit layout
differences.
Let me take a look at how you're proposing using this info for iSER, if
it makes sense I think we should come up with a better designed
structure for passing the information.
Thanks,
Chris
> Robert LeBlanc (7):
> scsi/scsi_transport_iscsi: Add iface struct to kernel.
> scsi/scsi_transport_iscsi: Update ep_connect to include iface.
> ib/iSER: Add binding to source IP address.
> scsi/be2iscsi: Update beiscsi_ep_connect to accept iface and
> sockaddr_storage.
> scsi/bnx2i: Update bnx2i_ep_connect to accept iface and
> sockaddr_storage.
> scsi/cxgbi: Update cxgbi_ep_connect to accept iface and
> sockaddr_storage.
> scsi/qla4xxx: Update qla4xxx_ep_connect to accept iface and
> sockaddr_storage.
>
> drivers/infiniband/ulp/iser/iscsi_iser.c | 33 +++++++--
> drivers/infiniband/ulp/iser/iscsi_iser.h | 4 +-
> drivers/infiniband/ulp/iser/iser_initiator.c | 1 +
> drivers/infiniband/ulp/iser/iser_memory.c | 1 +
> drivers/infiniband/ulp/iser/iser_verbs.c | 8 ++-
> drivers/scsi/be2iscsi/be_cmds.c | 1 +
> drivers/scsi/be2iscsi/be_iscsi.c | 8 ++-
> drivers/scsi/be2iscsi/be_iscsi.h | 5 +-
> drivers/scsi/be2iscsi/be_main.c | 1 +
> drivers/scsi/be2iscsi/be_mgmt.c | 1 +
> drivers/scsi/bnx2i/bnx2i_hwi.c | 1 +
> drivers/scsi/bnx2i/bnx2i_iscsi.c | 13 ++--
> drivers/scsi/cxgbi/libcxgbi.c | 15 ++--
> drivers/scsi/cxgbi/libcxgbi.h | 2 +-
> drivers/scsi/qla4xxx/ql4_os.c | 15 ++--
> drivers/scsi/scsi_transport_iscsi.c | 9 ++-
> include/scsi/scsi_transport_iscsi.h | 100 ++++++++++++++++++++++++++-
> 17 files changed, 179 insertions(+), 39 deletions(-)
>
> --
> 2.11.0
>