summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNilesh Javali <nilesh.javali@cavium.com>2016-11-11 08:17:50 +0200
committerChris Leech <cleech@redhat.com>2017-02-14 21:00:39 -0800
commitdc939e78d6dab78f3fcddfada581fa402604bb51 (patch)
tree1706750eb16de99502b6a40bed264579f5521f1b
parent86e88927d1ffbadff37f5d2137e5c73c50845843 (diff)
downloadopen-iscsi-dc939e78d6dab78f3fcddfada581fa402604bb51.tar.gz
iscsid: Changes to support the new qedi transport
Signed-off-by: Manish Rangankar <manish.rangankar@cavium.com> Signed-off-by: Adheer Chandravanshi <adheer.chandravanshi@qlogic.com> Signed-off-by: Nilesh Javali <nilesh.javali@cavium.com>
-rw-r--r--usr/initiator_common.c2
-rw-r--r--usr/transport.c13
-rw-r--r--usr/transport.h1
3 files changed, 15 insertions, 1 deletions
diff --git a/usr/initiator_common.c b/usr/initiator_common.c
index 1d1d822..191e779 100644
--- a/usr/initiator_common.c
+++ b/usr/initiator_common.c
@@ -700,7 +700,7 @@ int iscsi_host_set_net_params(struct iface_rec *iface,
netdev = hinfo.iface.netdev;
}
- if (net_ifup_netdev(netdev))
+ if (!t->template->no_netdev && net_ifup_netdev(netdev))
log_warning("Could not brining up netdev %s. Try running "
"'ifup %s' first if login fails.", netdev, netdev);
diff --git a/usr/transport.c b/usr/transport.c
index 18b7704..533ba30 100644
--- a/usr/transport.c
+++ b/usr/transport.c
@@ -114,6 +114,18 @@ struct iscsi_transport_template ocs = {
.ep_disconnect = ktransport_ep_disconnect,
};
+struct iscsi_transport_template qedi = {
+ .name = "qedi",
+ .set_host_ip = SET_HOST_IP_REQ,
+ .use_boot_info = 1,
+ .bind_ep_required = 1,
+ .no_netdev = 1,
+ .ep_connect = ktransport_ep_connect,
+ .ep_poll = ktransport_ep_poll,
+ .ep_disconnect = ktransport_ep_disconnect,
+ .set_net_config = uip_broadcast_params,
+};
+
static struct iscsi_transport_template *iscsi_transport_templates[] = {
&iscsi_tcp,
&iscsi_iser,
@@ -123,6 +135,7 @@ static struct iscsi_transport_template *iscsi_transport_templates[] = {
&qla4xxx,
&be2iscsi,
&ocs,
+ &qedi,
NULL
};
diff --git a/usr/transport.h b/usr/transport.h
index 4d3bdbf..b67776b 100644
--- a/usr/transport.h
+++ b/usr/transport.h
@@ -39,6 +39,7 @@ struct iscsi_transport_template {
uint8_t set_host_ip;
uint8_t use_boot_info;
uint8_t bind_ep_required;
+ uint8_t no_netdev;
int (*ep_connect) (struct iscsi_conn *conn, int non_blocking);
int (*ep_poll) (struct iscsi_conn *conn, int timeout_ms);
void (*ep_disconnect) (struct iscsi_conn *conn);