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. 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