Hi, Mike, The patch is taking care of the cases where the ip address is already set by other tools. And if the ip address is not present in the iface file, the ip of the netdev/ethX is used.
Thanks, Karen -----Original Message----- From: [email protected] [mailto:[email protected]] On Behalf Of Mike Christie Sent: Tuesday, October 25, 2011 3:45 PM To: [email protected] Cc: Anish Bhatt Subject: Re: [PATCH] make if.ipaddress optional in iface configuration files for offload iscsi On 10/25/2011 01:58 PM, Anish Bhatt wrote: > Currently, the iface.ipaddress field is required in iface files for > offload iscsi. This is not generated by `iscsiadm -m iface` , requiring > manual editing of the files. However, some transports (like Chelsio) can > work without needing the ipaddress to be explicitly defined in the iface > files. This patch lets the transport template specify that this field > is optional. After patch, transport can pull ip address from the system, > but this can still be overridden by specifying iface.ipaddress , thus > dropping the hard requirement. Ah, I thought we always had to set it for chelsio cards. For chelsio cards does this work if the iscsi function does not have any address set at all or is it already setup by some other tools or previous iscsiadm run? If nothing is set by the iscsi tools is the ip of the netdev/ethX that the iscsi interface is bound supposed to be used then? + return EINVAL; + } else if(t->template->set_host_ip == SET_HOST_IP_OPT) { + log_info("Optional iface.ipaddress for iface %s, " + "not set.\n", iface->name); + return 0; diff --git a/usr/transport.c b/usr/transport.c index 5d6bea4..fc85ce7 100644 --- a/usr/transport.c +++ b/usr/transport.c @@ -45,7 +45,7 @@ struct iscsi_transport_template iscsi_iser = { struct iscsi_transport_template cxgb3i = { .name = "cxgb3i", - .set_host_ip = 1, + .set_host_ip = 2, .ep_connect = ktransport_ep_connect, .ep_poll = ktransport_ep_poll, .ep_disconnect = ktransport_ep_disconnect, @@ -54,7 +54,7 @@ struct iscsi_transport_template cxgb3i = { struct iscsi_transport_template cxgb4i = { .name = "cxgb4i", - .set_host_ip = 1, + .set_host_ip = 2, .ep_connect = ktransport_ep_connect, .ep_poll = ktransport_ep_poll, .ep_disconnect = ktransport_ep_disconnect, diff --git a/usr/transport.h b/usr/transport.h Since you made it into a enum use the enum names instead of the numerical values. It will be easier to read. -- You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/open-iscsi?hl=en. -- You received this message because you are subscribed to the Google Groups "open-iscsi" group. To post to this group, send email to [email protected]. To unsubscribe from this group, send email to [email protected]. For more options, visit this group at http://groups.google.com/group/open-iscsi?hl=en.
