Package: open-iscsi Version: 2.0.873-3 Severity: normal
Hi, I have iSCSI storage array, and dedicated to it broadcom interfaces with iSCSI Offload engine (BCM5709). After configuring open-iscsi to use offload engine (transport bnx2i) i have no connectivity. When I'm forcing to log in to target by iscsiadm -m node --login it hangs. I figured out that it is sendig by NETLINK command to 'iscsid', and iscsid is trying to communicate with kernel without success. Strace of iscsiadm shows: socket(PF_FILE, SOCK_STREAM, 0) = 3 connect(3, {sa_family=AF_FILE, path=@"ISCSIADM_ABSTRACT_NAMESPACE"}, 110) = 0 write(...) recvfrom( (waiting and finnaly connection timed out) While 'iscsid -d8 -f' shows: iscsid: thread 01ad1128 wait some more iscsid: thread 01ad1128 wait some more iscsid: thread 01ad1128 wait some more iscsid: thread 01ad1128 was scheduled at 1463:12, curtime 1475 q_forw 0x68b330 &pend_list 0x68b330 iscsid: thread 01ad1128 now in actor_list iscsid: exec thread 01ad1128 callback iscsid: iscsi_login_eh iscsid: login failed ISCSI_CONN_STATE_XPT_WAIT/R_STAGE_NO_CHANGE iscsid: in ktransport_ep_disconnect iscsid: get ev context 0x1ad5020 iscsid: in ktransport_ep_connect iscsid: in __kipc_call iscsid: in kwritev iscsid: in nlpayload_read iscsid: expecting event 29, got 103, handling... iscsid: in nlpayload_read iscsid: Received iferror -19: No such device. iscsid: cannot make a connection to 10.2.90.69:3260 (-19,2) iscsid: put ev context 0x1ad5020 iscsid: Requeue reopen attempt in 3 secs iscsid: thread 01ad1128 delete: state 3 iscsid: thread 0x1ad1128 schedule: delay 12 state 3 iscsid: thread removed iscsid: thread 01ad1128 wait some more iscsid: thread 01ad1128 wait some more iscsid: thread 01ad1128 wait some more iscsid: thread 01ad1128 was scheduled at 1475:12, curtime 1487 q_forw 0x68b330 &pend_list 0x68b330 iscsid: thread 01ad1128 now in actor_list iscsid: exec thread 01ad1128 callback iscsid: iscsi_login_eh iscsid: login failed ISCSI_CONN_STATE_XPT_WAIT/R_STAGE_NO_CHANGE iscsid: Giving up on initial login attempt after 120 seconds. iscsid: disconnect conn iscsid: in ktransport_ep_disconnect iscsid: Connection-1:0 to [target: iqn.1992-04.com.emc:cx.ckm00122000265.a7, portal: 10.2.90.69,3260] through [iface: bnx2i.00:10:18:e6:c3:55] is shutdown. iscsid: mgmt_ipc_write_rsp: rsp to fd 5 iscsid: thread 01ad1128 delete: state 3 iscsid: thread 01ad1160 delete: state 0 iscsid: destroying session In dmesg I have only: [ 858.845517] cnic: Broadcom NetXtreme II CNIC Driver cnic v2.5.7 (July 20, 2011) [ 858.845570] bnx2 0000:01:00.0: peth0: Added CNIC device [ 858.846906] bnx2 0000:01:00.1: eth1: Added CNIC device [ 858.846943] bnx2 0000:04:00.0: eth2: Added CNIC device [ 858.848267] bnx2 0000:04:00.1: eth3: Added CNIC device [ 858.851317] Broadcom NetXtreme II iSCSI Driver bnx2i v2.7.0.3 (Jun 15, 2011) [ 858.851359] iscsi: registered transport (bnx2i) [ 858.851471] scsi6 : Broadcom Offload iSCSI Initiator [ 858.851892] bnx2i [04:00.01]: ISCSI_INIT passed [ 858.856678] scsi7 : Broadcom Offload iSCSI Initiator [ 858.857106] bnx2i [04:00.00]: ISCSI_INIT passed [ 858.864650] scsi8 : Broadcom Offload iSCSI Initiator [ 858.864912] scsi9 : Broadcom Offload iSCSI Initiator [ 858.865324] bnx2i [01:00.00]: ISCSI_INIT passed But no information about connecting to target. I use following configuration: # iscsiadm -m node -T iqn.1992-04.com.emc:cx.ckm00122000265.a7 # BEGIN RECORD 2.0-873 node.name = iqn.1992-04.com.emc:cx.ckm00122000265.a7 node.tpgt = -1 node.startup = automatic node.leading_login = No iface.hwaddress = 00:10:18:e6:c3:55 iface.ipaddress = 10.2.90.68 iface.iscsi_ifacename = bnx2i.00:10:18:e6:c3:55 iface.net_ifacename = <empty> iface.transport_name = bnx2i iface.initiatorname = <empty> iface.bootproto = <empty> iface.subnet_mask = <empty> iface.gateway = <empty> iface.ipv6_autocfg = <empty> iface.linklocal_autocfg = <empty> iface.router_autocfg = <empty> iface.ipv6_linklocal = <empty> iface.ipv6_router = <empty> iface.state = <empty> iface.vlan_id = 0 iface.vlan_priority = 0 iface.vlan_state = <empty> iface.iface_num = 0 iface.mtu = 9000 iface.port = 0 node.discovery_address = <empty> node.discovery_port = 0 node.discovery_type = static node.session.initial_cmdsn = 0 node.session.initial_login_retry_max = 8 node.session.xmit_thread_priority = -20 node.session.cmds_max = 128 node.session.queue_depth = 32 node.session.nr_sessions = 1 node.session.auth.authmethod = None node.session.auth.username = <empty> node.session.auth.password = <empty> node.session.auth.username_in = <empty> node.session.auth.password_in = <empty> node.session.timeo.replacement_timeout = 60 node.session.err_timeo.abort_timeout = 15 node.session.err_timeo.lu_reset_timeout = 30 node.session.err_timeo.tgt_reset_timeout = 30 node.session.err_timeo.host_reset_timeout = 60 node.session.iscsi.FastAbort = Yes node.session.iscsi.InitialR2T = Yes node.session.iscsi.ImmediateData = No node.session.iscsi.FirstBurstLength = 262144 node.session.iscsi.MaxBurstLength = 16776192 node.session.iscsi.DefaultTime2Retain = 0 node.session.iscsi.DefaultTime2Wait = 2 node.session.iscsi.MaxConnections = 1 node.session.iscsi.MaxOutstandingR2T = 1 node.session.iscsi.ERL = 0 node.conn[0].address = 10.2.90.69 node.conn[0].port = 3260 node.conn[0].startup = manual node.conn[0].tcp.window_size = 524288 node.conn[0].tcp.type_of_service = 0 node.conn[0].timeo.logout_timeout = 15 node.conn[0].timeo.login_timeout = 15 node.conn[0].timeo.auth_timeout = 45 node.conn[0].timeo.noop_out_interval = 5 node.conn[0].timeo.noop_out_timeout = 5 node.conn[0].iscsi.MaxXmitDataSegmentLength = 0 node.conn[0].iscsi.MaxRecvDataSegmentLength = 262144 node.conn[0].iscsi.HeaderDigest = None node.conn[0].iscsi.DataDigest = None node.conn[0].iscsi.IFMarker = No node.conn[0].iscsi.OFMarker = No # END RECORD # iscsiadm -m node -T iqn.1992-04.com.emc:cx.ckm00122000265.b7 # BEGIN RECORD 2.0-873 node.name = iqn.1992-04.com.emc:cx.ckm00122000265.b7 node.tpgt = -1 node.startup = automatic node.leading_login = No iface.hwaddress = 00:10:18:e6:c3:57 iface.ipaddress = 10.2.90.100 iface.iscsi_ifacename = bnx2i.00:10:18:e6:c3:57 iface.net_ifacename = <empty> iface.transport_name = bnx2i iface.initiatorname = <empty> iface.bootproto = <empty> iface.subnet_mask = <empty> iface.gateway = <empty> iface.ipv6_autocfg = <empty> iface.linklocal_autocfg = <empty> iface.router_autocfg = <empty> iface.ipv6_linklocal = <empty> iface.ipv6_router = <empty> iface.state = <empty> iface.vlan_id = 0 iface.vlan_priority = 0 iface.vlan_state = <empty> iface.iface_num = 0 iface.mtu = 9000 iface.port = 0 node.discovery_address = <empty> node.discovery_port = 0 node.discovery_type = static node.session.initial_cmdsn = 0 node.session.initial_login_retry_max = 8 node.session.xmit_thread_priority = -20 node.session.cmds_max = 128 node.session.queue_depth = 32 node.session.nr_sessions = 1 node.session.auth.authmethod = None node.session.auth.username = <empty> node.session.auth.password = <empty> node.session.auth.username_in = <empty> node.session.auth.password_in = <empty> node.session.timeo.replacement_timeout = 60 node.session.err_timeo.abort_timeout = 15 node.session.err_timeo.lu_reset_timeout = 30 node.session.err_timeo.tgt_reset_timeout = 30 node.session.err_timeo.host_reset_timeout = 60 node.session.iscsi.FastAbort = Yes node.session.iscsi.InitialR2T = Yes node.session.iscsi.ImmediateData = No node.session.iscsi.FirstBurstLength = 262144 node.session.iscsi.MaxBurstLength = 16776192 node.session.iscsi.DefaultTime2Retain = 0 node.session.iscsi.DefaultTime2Wait = 2 node.session.iscsi.MaxConnections = 1 node.session.iscsi.MaxOutstandingR2T = 1 node.session.iscsi.ERL = 0 node.conn[0].address = 10.2.90.101 node.conn[0].port = 3260 node.conn[0].startup = manual node.conn[0].tcp.window_size = 524288 node.conn[0].tcp.type_of_service = 0 node.conn[0].timeo.logout_timeout = 15 node.conn[0].timeo.login_timeout = 15 node.conn[0].timeo.auth_timeout = 45 node.conn[0].timeo.noop_out_interval = 5 node.conn[0].timeo.noop_out_timeout = 5 node.conn[0].iscsi.MaxXmitDataSegmentLength = 0 node.conn[0].iscsi.MaxRecvDataSegmentLength = 262144 node.conn[0].iscsi.HeaderDigest = None node.conn[0].iscsi.DataDigest = None node.conn[0].iscsi.IFMarker = No node.conn[0].iscsi.OFMarker = No # END RECORD After debugging and searching some information i believe that offload engine to operate needs: - dedicated daemon available under GPL (file COPYING) called 'iscsiuio' - interface between iscsid and iscsiuio (propobly patchers of open-iscsi are required) I've been testing this on also on Centos, RHEL and SLES and in all of this distributions Offload engine is working gaining about 15% of performance. On thous distributions this problem is soled by including 'iscsiuio' and 'open-iscsi' into one 'initiator-tools' package, but I believe hat it dosn't have to be that way. They also use set of patches to make interface between this two components. There might be also a problem with DFSG since in iscsiuio there is release notes (file RELEASE.txt) leaved by Broadcom with copyrights but maybe 'iscsiuio' might be placed in non-free. I've tried to be precise, but if You need additional iformation please let me know. -- System Information: Debian Release: 7.0 APT prefers testing APT policy: (500, 'testing') Architecture: amd64 (x86_64) Kernel: Linux 3.2.0-4-amd64 (SMP w/24 CPU cores) Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8) Shell: /bin/sh linked to /bin/dash Versions of packages open-iscsi depends on: ii libc6 2.13-37 ii udev 175-7 open-iscsi recommends no packages. open-iscsi suggests no packages. -- Configuration Files: /etc/iscsi/initiatorname.iscsi changed: InitiatorName=iqn.1993-08.org.debian:01:e142dcfa5f5d /etc/iscsi/iscsid.conf changed: iscsid.startup = /usr/sbin/iscsid node.startup = automatic node.leading_login = No node.session.timeo.replacement_timeout = 60 node.conn[0].timeo.login_timeout = 15 node.conn[0].timeo.logout_timeout = 15 node.conn[0].timeo.noop_out_interval = 5 node.conn[0].timeo.noop_out_timeout = 5 node.session.err_timeo.abort_timeout = 15 node.session.err_timeo.lu_reset_timeout = 30 node.session.err_timeo.tgt_reset_timeout = 30 node.session.initial_login_retry_max = 8 node.session.cmds_max = 128 node.session.queue_depth = 32 node.session.xmit_thread_priority = -20 node.session.iscsi.InitialR2T = Yes node.session.iscsi.ImmediateData = No node.session.iscsi.FirstBurstLength = 262144 node.session.iscsi.MaxBurstLength = 16776192 node.conn[0].iscsi.MaxRecvDataSegmentLength = 262144 node.conn[0].iscsi.MaxXmitDataSegmentLength = 0 discovery.sendtargets.iscsi.MaxRecvDataSegmentLength = 32768 node.session.nr_sessions = 1 node.session.iscsi.FastAbort = Yes -- no debconf information -- To UNSUBSCRIBE, email to debian-bugs-dist-requ...@lists.debian.org with a subject of "unsubscribe". Trouble? Contact listmas...@lists.debian.org