Terence Eden | 21 Apr 20:19 2014

[PATCH 2/2] Correcting a spelling mistake which was causing some confusion - "recieved_value" should be "received_value".

From: Terence Eden <github.com <at> shkspr.mobi>

Signed-off-by: Terence Eden <github.com <at> shkspr.mobi>
 drivers/target/iscsi/iscsi_target_parameters.c |   10 +++++-----
 1 file changed, 5 insertions(+), 5 deletions(-)

diff --git a/drivers/target/iscsi/iscsi_target_parameters.c b/drivers/target/iscsi/iscsi_target_parameters.c
index 4d2e23f..ce88892 100644
--- a/drivers/target/iscsi/iscsi_target_parameters.c
+++ b/drivers/target/iscsi/iscsi_target_parameters.c
 <at>  <at>  -1240,7 +1240,7  <at>  <at>  static int iscsi_check_proposer_state(struct iscsi_param *param, char *value)

 	if (IS_TYPE_NUMBER_RANGE(param)) {
-		u32 left_val = 0, right_val = 0, recieved_value = 0;
+		u32 left_val = 0, right_val = 0, received_value = 0;
 		char *left_val_ptr = NULL, *right_val_ptr = NULL;
 		char *tilde_ptr = NULL;

 <at>  <at>  -1268,15 +1268,15  <at>  <at>  static int iscsi_check_proposer_state(struct iscsi_param *param, char *value)
 		right_val_ptr = param->value + strlen(left_val_ptr) + 1;
 		left_val = simple_strtoul(left_val_ptr, NULL, 0);
 		right_val = simple_strtoul(right_val_ptr, NULL, 0);
-		recieved_value = simple_strtoul(value, NULL, 0);
+		received_value = simple_strtoul(value, NULL, 0);

 		*tilde_ptr = '~';

-		if ((recieved_value < left_val) ||
(Continue reading)

Nicholas A. Bellinger | 18 Apr 03:57 2014

Re: isert for mellanox drivers

Hi Tony,

(CC'ing target-devel list)

On Thu, 2014-04-17 at 07:00 +0000, 서정민 wrote:
> Hi, Nicholas,
> Nice to meet you, just one simple question.
> I am trying to figure out setting up iSER target with the mellanox
> card attached.
> The current mellanox driver(2.1.0) does not have the ib_isert kernel
> module inside,

Not sure what the plan is for ib_isert wrt to the OFED distro.

CC'ing some Mellanox folks for that bit..

> and, as expected, it fails to load the updated version of the ib_isert
> module with the mellanox driver, due to the version problem.
(Continue reading)

Nicholas A. Bellinger | 18 Apr 02:12 2014

[Fwd: Re: Reject on Data-Out exceeding ExpectedDataTransferLength]

Mmmm, forgot that Julo's email address  <at> il.ibm.com no longer works..

Forwarding to his gmail address.

From: Nicholas A. Bellinger <nab <at> linux-iscsi.org>
Subject: Re: Reject on Data-Out exceeding ExpectedDataTransferLength
Date: 2014-04-17 23:52:59 GMT
On Mon, 2014-04-14 at 12:56 +0530, Tejas Vaykole wrote:
> On 4/1/2014 5:09 AM, Nicholas A. Bellinger wrote:
> Hi Nicholas,
> > Hi Tejas,
> >
> > On Wed, 2014-03-26 at 12:13 +0530, Tejas Vaykole wrote:
> >> Hi,
> >> I need clarification on the behavior of LIO regarding SCSI Response
> >> on error when single or multiple dataout PDU's exceeds EDTL limit.
> >>
> >> I understand this is an error. However, I am expecting the target
> >> to return check condition (RFC section -Sense Data) instead
> >> what I am seeing is that LIO is returning reject.
> >>
> >> Below is the sequence of write and r2t...
> >>
(Continue reading)

Jun Wu | 18 Apr 01:01 2014

Re: tcm_fc crash

On the initiator side, I run fio and see the following messages in dmesg:

[ 3294.893951] BUG: soft lockup - CPU#2 stuck for 22s! [systemd-udevd:4665]
[ 3294.895491] Modules linked in: target_core_pscsi target_core_file
target_core_iblock ipmi_devintf ipmi_si ipmi_msghandler ib_srpt
tcm_qla2xxx qla2xxx tcm_loop tcm_fc iscsi_target_mod target_core_mod
configfs 8021q garp stp mrp llc fcoe libfcoe libfc scsi_transport_fc
scsi_tgt ib_iser rdma_cm ib_addr iw_cm ib_cm ib_sa ib_mad ib_core
iscsi_tcp libiscsi_tcp libiscsi scsi_transport_iscsi radeon ttm
drm_kms_helper drm intel_powerclamp coretemp kvm_intel kvm gpio_ich
microcode psmouse serio_raw lpc_ich ioatdma i7core_edac edac_core
shpchp mac_hid lp parport ext2 ses enclosure pata_acpi hid_generic igb
ixgbe usbhid i2c_algo_bit dca hid pata_jmicron ptp aacraid mdio
[ 3294.895533] CPU: 2 PID: 4665 Comm: systemd-udevd Tainted: GF
W    3.11.0-18-generic #32-Ubuntu
[ 3294.895534] Hardware name: Supermicro X8DTN/X8DTN, BIOS 2.1c       10/28/2011
[ 3294.895536] task: ffff880628592ee0 ti: ffff88062a52e000 task.ti:
[ 3294.895538] RIP: 0010:[<ffffffff810c64ae>]  [<ffffffff810c64ae>]
[ 3294.895542] RSP: 0018:ffff88062a52fad8  EFLAGS: 00000202
[ 3294.895544] RAX: 0000000000000007 RBX: ffffffff81d04dc0 RCX: ffff88063fc77fd0
[ 3294.895545] RDX: 0000000000000007 RSI: 0000000000000100 RDI: 0000000000000000
[ 3294.895547] RBP: ffff88062a52fb28 R08: ffff880333c550c8 R09: 0000000000000004
[ 3294.895549] R10: ffff880333c550c8 R11: 0000000000000005 R12: ffff88062a52fb10
[ 3294.895550] R13: 0000000000000282 R14: ffff88062a52fa78 R15: ffff880333c54580
[ 3294.895553] FS:  00007f2603f63880(0000) GS:ffff880333c40000(0000)
[ 3294.895555] CS:  0010 DS: 0000 ES: 0000 CR0: 0000000080050033
(Continue reading)

Andy Grover | 15 Apr 19:44 2014

Re: targetctl restore and OSError: [Errno 22] Invalid argument

On 04/14/2014 06:05 AM, Krzysztof Chojnowski wrote:
> Hi,
> I'm testing targetcli-fb on my Archlinux box and restore functionality
> is failing with following:
> # /usr/bin/targetctl restore
> OSError: [Errno 22] Invalid argument
> During handling of the above exception, another exception occurred:
> Traceback (most recent call last):
>    File "/usr/lib/python3.4/site-packages/rtslib/node.py", line 140, in
> set_attribute
>      fwrite(path, "%s" % str(value))
>    File "/usr/lib/python3.4/site-packages/rtslib/utils.py", line 67, in
> fwrite
>      file_fd.write(str(string))
> OSError: [Errno 22] Invalid argument
> During handling of the above exception, another exception occurred:
> Traceback (most recent call last):
>    File "/usr/bin/targetctl", line 87, in <module>
>      main()
>    File "/usr/bin/targetctl", line 84, in main
>      funcs[sys.argv[1]](savefile)
>    File "/usr/bin/targetctl", line 47, in restore
>      errors = RTSRoot().restore_from_file(restore_file=from_file)
>    File "/usr/lib/python3.4/site-packages/rtslib/root.py", line 260, in
(Continue reading)

Jun Wu | 15 Apr 18:15 2014

tcm_fc crash


We are working on a cluster file system using fcoe vn2vn. Multiple
initiators can see the same set of target hard drives exported by
targetcli tcm_fc. When the initiators run IO to these target hard
drives at the same time, target system crashes no matter using iblock
backstore or pscsi backstore. See the following dump.

crash> bt
PID: 318    TASK: ffff880c1a05aee0  CPU: 5   COMMAND: "kworker/5:1"
 #0 [ffff880c1a895a48] machine_kexec at ffffffff810485e2
 #1 [ffff880c1a895a98] crash_kexec at ffffffff810d09d3
 #2 [ffff880c1a895b60] oops_end at ffffffff816f0c98
 #3 [ffff880c1a895b88] die at ffffffff8101616b
 #4 [ffff880c1a895bb8] do_trap at ffffffff816f04b0
 #5 [ffff880c1a895c08] do_invalid_op at ffffffff810134a8
 #6 [ffff880c1a895cb0] invalid_op at ffffffff816f9c1e
    [exception RIP: ft_queue_data_in+1386]
    RIP: ffffffffa0641eda  RSP: ffff880c1a895d68  RFLAGS: 00010246
    RAX: 0000000000001000  RBX: ffff880c17a6dc10  RCX: 0000000000000002
    RDX: 0000000000000000  RSI: ffff880c1afa36d8  RDI: 0000000000000000
    RBP: ffff880c1a895df8   R8: ffff880c1667e45c   R9: dfcf2970a166dd90
    R10: dfcf2970a166dd90  R11: 0000000000000000  R12: ffff880c17a6dc10
    R13: ffff880c3fc33e00  R14: 0000000000001000  R15: 0000000000000140
    ORIG_RAX: ffffffffffffffff  CS: 0010  SS: 0018
 #7 [ffff880c1a895d60] ft_queue_data_in at ffffffffa06419c7 [tcm_fc]
 #8 [ffff880c1a895e00] target_complete_ok_work at ffffffffa04ded21

(Continue reading)

Lord Cheeseburger | 15 Apr 17:10 2014

targetcli doesn't see fc hba

targetcli doesnt list my fiber channel controller, so I'm unable to
create targets on it.  Relevant information below.

QLogic QLE2462
CentOS release 6.5 (Final)

[root <at> target lib]# lspci | grep -i qlogic
04:00.0 Fibre Channel: QLogic Corp. ISP2432-based 4Gb Fibre Channel to
PCI Express HBA (rev 03)
04:00.1 Fibre Channel: QLogic Corp. ISP2432-based 4Gb Fibre Channel to
PCI Express HBA (rev 03)

[root <at> target qla2xxx]# cat version

[root <at> target modprobe.d]# cat qla2xxx.conf
#allow target mode
options qla2xxx qlini_mode=disabled

[root <at> target modprobe.d]# lsmod | grep qla
qla2xxx               516648  0
scsi_transport_fc      55299  4 qla2xxx,bnx2fc,fcoe,libfc

[root <at> target QConvergeConsoleCLI]# qaucli -t
HBA Instance 0: QLE2462 Port 1 WWPN 21-00-00-24-FF-2F-CA-3C PortID 00-00-00
Link: Link Down
No fabric attached devices on HBA (Instance 0)!
HBA Instance 1: QLE2462 Port 2 WWPN 21-00-00-24-FF-2F-CA-3D PortID 00-00-EF
(Continue reading)

Nicholas A. Bellinger | 12 Apr 23:29 2014

[GIT PULL] target updates for v3.15-rc1

Hello Linus!

Here are the target pending updates for v3.15-rc1.  Apologies in advance
for waiting until the second to last day of the merge window to send
these out.

Please go ahead and pull from:

  git://git.kernel.org/pub/scm/linux/kernel/git/nab/target-pending.git for-next

The highlights this round include:

  - iser-target support for T10 PI (DIF) offloads (Sagi + Or)
  - Fix Task Aborted Status (TAS) handling in target-core (Alex Leung)
  - Pass in transport supported PI at session initialization (Sagi + MKP + nab)
  - Add WRITE_INSERT + READ_STRIP T10 PI support in target-core (nab + Sagi)
  - Fix iscsi-target ERL=2 ASYNC_EVENT connection pointer bug (nab)
  - Fix tcm_fc use-after-free of ft_tpg (Andy Grover)
  - Use correct ib_sg_dma primitives in ib_isert (Mike Marciniszyn)

Also, note the virtio-scsi + vhost-scsi changes to expose T10 PI
metadata into KVM guest have been left-out for now, as there where a few
comments from MST + Paolo that where not able to be addressed in time
for v3.15.  Please expect this feature for v3.16-rc1.

Thank you,


Alex Leung (2):
(Continue reading)

santosh kulkarni | 10 Apr 12:14 2014

Target fails to identify invalid ITT in DataAck

Hi ,

I see that the target is not throwing any error message (in dmesg) or 
sending a Reject PDU when a DataAck Snack with invalid Initiator Task 
Tag is sent out,
where i am sending a DataAck Snack for Data-In PDU with ITT not set to 
reserved value 0xffffffff.

RFC States

10.16.4.  Initiator Task Tag

    For Status SNACK and DataACK, the Initiator Task Tag MUST be set to
    the reserved value 0xffffffff.

Is this the default behavior.


Arshad Hussain | 9 Apr 11:21 2014

ErrorRecoveryLevel Set as read-only Randomly.

Hi Nab,

Randomly my targetcli sets 'ErrorRecoveyLevel' as read only.
I have checked the configfs and debugfs they are both mounted
with permission of read and write. What surprises me is that
the ERL and default_erl under 'tpg1' is fine. It is only the
ERL parameter under 'acls/iqn...' which is marked read-only.

Could you comment on this please ? Is there a work-around to
get over this issue?

I have provided the details below. Please let me know if there any
other info you require?


/iscsi/iqn.20...t:981fc286f48> get parameter ErrorRecoveryLevel
ErrorRecoveryLevel=No Active iSCSI Session [ro]
/iscsi/iqn.20...t:981fc286f48> set parameter ErrorRecoveryLevel=2
Parameter ErrorRecoveryLevel is read-only.

/iscsi/iqn.20...t:981fc286f48> get attribute default_erl

/iscsi/iqn.20...093081c0/tpg1> pwd
(Continue reading)

Slava Shwartsman | 8 Apr 09:19 2014

I_T nexus information on LIO


Is there any way that I can find out what initiators (iqn's) are currently
connected to the target?