shivraj dongawe | 30 Jul 11:08 2014
Picon

Sending more than one write request as a single write request

Hi all,

         I would like to ask one question regarding write command in iSCSI.
         Suppose I have info about few lbas, lengths and data at the lbas.
         Is it possible that I could send more number of lbas, lengths and data at those lbas in a single write command PDU 
         from initiator to target? 

--
You received this message because you are subscribed to the Google Groups "open-iscsi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to open-iscsi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/open-iscsi.
For more options, visit https://groups.google.com/d/optout.
Anish Bhatt | 25 Jul 21:42 2014

[PATCH v2] iscsiadm : make iface.ipaddress optional in iface configs for transports that don't have a hard requirement on it.

v2: cxgb4i changed to NOT_REQ as set ipaddress is not supported
Signed-off-by: Anish Bhatt <anish@...>
---
 usr/initiator_common.c | 15 ++++++++++++---
 usr/transport.c        |  8 ++++----
 usr/transport.h        |  6 ++++++
 3 files changed, 22 insertions(+), 7 deletions(-)

diff --git a/usr/initiator_common.c b/usr/initiator_common.c
index 50f8d41..8ff993d 100644
--- a/usr/initiator_common.c
+++ b/usr/initiator_common.c
 <at>  <at>  -685,9 +685,18  <at>  <at>  int iscsi_host_set_net_params(struct iface_rec *iface,

 	/* if we need to set the ip addr then set all the iface net settings */
 	if (!iface_is_bound_by_ipaddr(iface)) {
-		log_warning("Please set the iface.ipaddress for iface %s, "
-			    "then retry the login command.\n", iface->name);
-		return EINVAL;
+		if (t->template->set_host_ip == SET_HOST_IP_REQ) {
+			log_warning("Please set the iface.ipaddress for iface "
+				    "%s, then retry the login command.\n",
+				    iface->name);
+			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;
+		} else {
+			return EINVAL;
+		}
 	}

 	/* these type of drivers need the netdev upd */
diff --git a/usr/transport.c b/usr/transport.c
index 2f38519..630f163 100644
--- a/usr/transport.c
+++ b/usr/transport.c
 <at>  <at>  -58,7 +58,7  <at>  <at>  struct iscsi_transport_template iscsi_iser = {

 struct iscsi_transport_template cxgb3i = {
 	.name		= "cxgb3i",
-	.set_host_ip	= 1,
+	.set_host_ip	= SET_HOST_IP_OPT,
 	.ep_connect	= ktransport_ep_connect,
 	.ep_poll	= ktransport_ep_poll,
 	.ep_disconnect	= ktransport_ep_disconnect,
 <at>  <at>  -67,7 +67,7  <at>  <at>  struct iscsi_transport_template cxgb3i = {

 struct iscsi_transport_template cxgb4i = {
 	.name		= "cxgb4i",
-	.set_host_ip	= 1,
+	.set_host_ip	= SET_HOST_IP_NOT_REQ,
 	.ep_connect	= ktransport_ep_connect,
 	.ep_poll	= ktransport_ep_poll,
 	.ep_disconnect	= ktransport_ep_disconnect,
 <at>  <at>  -76,7 +76,7  <at>  <at>  struct iscsi_transport_template cxgb4i = {

 struct iscsi_transport_template bnx2i = {
 	.name		= "bnx2i",
-	.set_host_ip	= 1,
+	.set_host_ip	= SET_HOST_IP_REQ,
 	.use_boot_info	= 1,
 	.ep_connect	= ktransport_ep_connect,
 	.ep_poll	= ktransport_ep_poll,
 <at>  <at>  -94,7 +94,7  <at>  <at>  struct iscsi_transport_template be2iscsi = {

 struct iscsi_transport_template qla4xxx = {
 	.name		= "qla4xxx",
-	.set_host_ip	= 0,
+	.set_host_ip	= SET_HOST_IP_NOT_REQ,
 	.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
index 388e4b1..73041fa 100644
--- a/usr/transport.h
+++ b/usr/transport.h
 <at>  <at>  -20,6 +20,12  <at>  <at> 
 #include "types.h"
 #include "config.h"

+enum set_host_ip_opts {
+	SET_HOST_IP_NOT_REQ,	/* iface.ipaddress is not supported	*/
+	SET_HOST_IP_REQ,	/* iface.ipaddress must be specified	*/
+	SET_HOST_IP_OPT,	/* iface.ipaddress is not required	*/
+};
+
 struct iscsi_transport;
 struct iscsi_conn;

-- 
2.0.3

--

-- 
You received this message because you are subscribed to the Google Groups "open-iscsi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscribe@...
To post to this group, send email to open-iscsi@...
Visit this group at http://groups.google.com/group/open-iscsi.
For more options, visit https://groups.google.com/d/optout.

Anish Bhatt | 25 Jul 05:24 2014

[PATCH trivial] iscsiadm : support using -I tcp or -I iscsi_tcp

This came up as a scripting issue, iscsiadm currently does not support
specifying tcp as a "default" iface when nothing else is available.
Behaves exactly as if no -I option was used.

Signed-off-by: Anish Bhatt <anish@...>
---
 usr/iscsiadm.c | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/usr/iscsiadm.c b/usr/iscsiadm.c
index 389f4b8..07cf470 100644
--- a/usr/iscsiadm.c
+++ b/usr/iscsiadm.c
 <at>  <at>  -3351,6 +3351,10  <at>  <at>  main(int argc, char **argv)
 			ping_interval = atoi(optarg);
 			break;
 		case 'I':
+			if (!strcmp(optarg, "tcp") ||
+			    !strcmp(optarg, "iscsi_tcp"))
+				break;
+
 			iface = iface_alloc(optarg, &rc);
 			if (rc == ISCSI_ERR_INVAL) {
 				printf("Invalid iface name %s. Must be from "
-- 
2.0.1

--

-- 
You received this message because you are subscribed to the Google Groups "open-iscsi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscribe@...
To post to this group, send email to open-iscsi@...
Visit this group at http://groups.google.com/group/open-iscsi.
For more options, visit https://groups.google.com/d/optout.

Mike Christie | 24 Jul 19:50 2014
Picon

[PATCH] fix login_timeout timer handling when retrying connect/login

Hey Roi, Vikas and Eddie,

The attached patch fixes the issue Roi reported where the login_timer
was not deleted and so we end up with a infinite loop. Roi, could you
test your failure case?

Vikas and Eddie, I ccd you guys because it modifies the bnx2i iscsiuio
code. There was a issue where iscsiuio was not ready (or the host was
not yet ready) and so iscsid would poll iscsiuio for a second or two and
it would use the login_timer as a watchdog. A couple weeks ago we hit a
issue with be2iscsi where the host was not ready to go so iscsid got
code to poll the iscsi/scsi_host. So this patch removes the iscsiuio
login_timer use and then also has it use this new common setup polling.

I have tested software iscsi.

--

-- 
You received this message because you are subscribed to the Google Groups "open-iscsi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscribe@...
To post to this group, send email to open-iscsi@...
Visit this group at http://groups.google.com/group/open-iscsi.
For more options, visit https://groups.google.com/d/optout.
Anish Bhatt | 24 Jul 08:14 2014
Picon

[PATCH] iscsiadm : make iface.ipaddress optional in iface configs for transports that don't have a hard requirement on it.

From: Anish Bhatt <anish@...>

Signed-off-by: Anish Bhatt <anish@...>
---
 usr/initiator_common.c | 15 ++++++++++++---
 usr/transport.c        |  8 ++++----
 usr/transport.h        |  6 ++++++
 3 files changed, 22 insertions(+), 7 deletions(-)

diff --git a/usr/initiator_common.c b/usr/initiator_common.c
index 50f8d41..8ff993d 100644
--- a/usr/initiator_common.c
+++ b/usr/initiator_common.c
 <at>  <at>  -685,9 +685,18  <at>  <at>  int iscsi_host_set_net_params(struct iface_rec *iface,

 	/* if we need to set the ip addr then set all the iface net settings */
 	if (!iface_is_bound_by_ipaddr(iface)) {
-		log_warning("Please set the iface.ipaddress for iface %s, "
-			    "then retry the login command.\n", iface->name);
-		return EINVAL;
+		if (t->template->set_host_ip == SET_HOST_IP_REQ) {
+			log_warning("Please set the iface.ipaddress for iface "
+				    "%s, then retry the login command.\n",
+				    iface->name);
+			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;
+		} else {
+			return EINVAL;
+		}
 	}

 	/* these type of drivers need the netdev upd */
diff --git a/usr/transport.c b/usr/transport.c
index 2f38519..3b4199f 100644
--- a/usr/transport.c
+++ b/usr/transport.c
 <at>  <at>  -58,7 +58,7  <at>  <at>  struct iscsi_transport_template iscsi_iser = {

 struct iscsi_transport_template cxgb3i = {
 	.name		= "cxgb3i",
-	.set_host_ip	= 1,
+	.set_host_ip	= SET_HOST_IP_OPT,
 	.ep_connect	= ktransport_ep_connect,
 	.ep_poll	= ktransport_ep_poll,
 	.ep_disconnect	= ktransport_ep_disconnect,
 <at>  <at>  -67,7 +67,7  <at>  <at>  struct iscsi_transport_template cxgb3i = {

 struct iscsi_transport_template cxgb4i = {
 	.name		= "cxgb4i",
-	.set_host_ip	= 1,
+	.set_host_ip	= SET_HOST_IP_OPT,
 	.ep_connect	= ktransport_ep_connect,
 	.ep_poll	= ktransport_ep_poll,
 	.ep_disconnect	= ktransport_ep_disconnect,
 <at>  <at>  -76,7 +76,7  <at>  <at>  struct iscsi_transport_template cxgb4i = {

 struct iscsi_transport_template bnx2i = {
 	.name		= "bnx2i",
-	.set_host_ip	= 1,
+	.set_host_ip	= SET_HOST_IP_REQ,
 	.use_boot_info	= 1,
 	.ep_connect	= ktransport_ep_connect,
 	.ep_poll	= ktransport_ep_poll,
 <at>  <at>  -94,7 +94,7  <at>  <at>  struct iscsi_transport_template be2iscsi = {

 struct iscsi_transport_template qla4xxx = {
 	.name		= "qla4xxx",
-	.set_host_ip	= 0,
+	.set_host_ip	= SET_HOST_IP_NOT_REQ,
 	.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
index 388e4b1..73041fa 100644
--- a/usr/transport.h
+++ b/usr/transport.h
 <at>  <at>  -20,6 +20,12  <at>  <at> 
 #include "types.h"
 #include "config.h"

+enum set_host_ip_opts {
+	SET_HOST_IP_NOT_REQ,	/* iface.ipaddress is not supported	*/
+	SET_HOST_IP_REQ,	/* iface.ipaddress must be specified	*/
+	SET_HOST_IP_OPT,	/* iface.ipaddress is not required	*/
+};
+
 struct iscsi_transport;
 struct iscsi_conn;

-- 
2.0.1

--

-- 
You received this message because you are subscribed to the Google Groups "open-iscsi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscribe@...
To post to this group, send email to open-iscsi@...
Visit this group at http://groups.google.com/group/open-iscsi.
For more options, visit https://groups.google.com/d/optout.

blueberryjoe | 19 Jul 02:19 2014
Picon

change target information in iscsi boot scenario

Hi folks-
 
Quick question.  Not strictly an openiscsi question but related enough that I'm hoping someone will help me out.  We have installed Ubuntu 14.04 to an iSCSI target called "rbd_base".  We then shut down the client, cloned the installation, and set up a new target called "rbd00".  I can boot off the clone, however, as the OS comes up I see it is still attaching to the original target:
 
iscsistart: Logging into rbd_base 10.0.0.3:3260,1
 
I assume this is just hard coded into a file somewhere when we did the original installation, and I can resolve it by changing that file, but so far I cannot find it.  Can anyone point me in the right direction?
 
If the cloning makes this complex I think you could have an equivalent scenario if you just had to rename your target post-installation - how would you adjust the install for the new target name?
 
Thanks!!
 
-Joe

--
You received this message because you are subscribed to the Google Groups "open-iscsi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to open-iscsi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/open-iscsi.
For more options, visit https://groups.google.com/d/optout.
vijayachandran.m | 24 Jul 04:58 2014
Picon

iscsi do & don't

Hi,

Please any one help me to get the list of iSCSI do & don't.

Ex:
1. iSCSI Target side i mounted the partition, which i have shared to initiator.
    From Initiator, i tried to format the scsi device which i got from iSCSI target, and changing the file system.
    I am getting some inode related kernel call traces in both iSCSI initiator and Target.

Exactly i dont know this is valied test or not.

Thanks in Advance,
Vijay

--
You received this message because you are subscribed to the Google Groups "open-iscsi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to open-iscsi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/open-iscsi.
For more options, visit https://groups.google.com/d/optout.
木木夕 | 23 Jul 04:42 2014
Picon

connection1:0: detected conn error (1011)

hello everyone,
the iscsi initiator can login the iscsi target successfully, everything looks well
but when i start to read I/O(dd if=/dev/sdb of=/dev/null bs=512k), it will print
"connection1:0: detected conn error (1011) "
it happened many times
any reply will be welcome

--
You received this message because you are subscribed to the Google Groups "open-iscsi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to open-iscsi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/open-iscsi.
For more options, visit https://groups.google.com/d/optout.
vikas.chaudhary | 17 Jul 11:27 2014

[PATCH] iscsiadm: Initialize param_count in set_host_chap_info

From: Manish Rangankar <manish.rangankar@...>

Signed-off-by: Manish Rangankar <manish.rangankar@...>
Signed-off-by: Vikas Chaudhary <vikas.chaudhary@...>
---
 usr/iscsiadm.c |    2 +-
 1 files changed, 1 insertions(+), 1 deletions(-)

diff --git a/usr/iscsiadm.c b/usr/iscsiadm.c
index 389f4b8..f886d39 100644
--- a/usr/iscsiadm.c
+++ b/usr/iscsiadm.c
 <at>  <at>  -1503,7 +1503,7  <at>  <at>  static int set_host_chap_info(uint32_t host_no, uint64_t chap_index,
 	struct iovec *iovs = NULL;
 	struct iovec *iov = NULL;
 	int type;
-	int param_count;
+	int param_count = 0;
 	int param_used;
 	int rc = 0;
 	int fd, i = 0;
-- 
1.7.1

--

-- 
You received this message because you are subscribed to the Google Groups "open-iscsi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscribe@...
To post to this group, send email to open-iscsi@...
Visit this group at http://groups.google.com/group/open-iscsi.
For more options, visit https://groups.google.com/d/optout.

felipe gutierrez | 15 Jul 20:04 2014

issue on format iscsi driver on linux, on windows it is perfect.

Hi all,

I am using jscsi.org target to create a driver on my SAN. But I problem is when I try to format my 1TB driver. I can format at windows and at linux.
On my windows I use 4096KB for allocation size per block with NTFS. Ant it creates 63 blocks with this interface.

When I use linux (mkfs.ext4 /dev/sdc) it creates 598 blocks and when I mount the disk (mount /dev/sdc /media/storage) the iscsi keeps creating blocks forever, until there is no more space left.

I supose I have to use some option with mkfs.ext4 to write 4096 size blocks?
Or is something with the mount command?

Thanks in advance!
Felipe

--
You received this message because you are subscribed to the Google Groups "open-iscsi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to open-iscsi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/open-iscsi.
For more options, visit https://groups.google.com/d/optout.
spbglr666 | 7 Jul 10:31 2014
Picon

issue - DataDigest

 I have a strange issue with iscsi Data Digest check sum. Iscsi is enabled in my server and Header digest and Data digest also enabled.

#LUN 0 with type fileio
#HeaderDigest CRC32
#DataDigest    CRC32

Am using windows as client - iscsi initiator . Once the require data is entered its connect. If i check the details it will show both checksum enabled. (hdr/data )
But wireshark log saying only header Digest is enabled no data digest info available.

Wireshark filter - iscsi.headerdigest32 - Success
Wireshark filter - iscsi.datadigest32    -  Failed 

Why wireshark is unable to detect data digest checksum.
May be it needs to be  recompiled with some flag,  or  there is  /proc variable ?
# Or any other pointers? "

Spbglr

--
You received this message because you are subscribed to the Google Groups "open-iscsi" group.
To unsubscribe from this group and stop receiving emails from it, send an email to open-iscsi+unsubscribe-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
To post to this group, send email to open-iscsi-/JYPxA39Uh5TLH3MbocFFw@public.gmane.org.
Visit this group at http://groups.google.com/group/open-iscsi.
For more options, visit https://groups.google.com/d/optout.

Gmane