Vladislav Bolkhovitin
7502f47dad
Fix small possible race in sessions management
...
In q2t_del_sess_work_fn() session can get ready to be destroyed before
hardware_lock is taken
From Bart Van Assche <bvanassche@acm.org >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5020 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-10-04 02:17:43 +00:00
Vladislav Bolkhovitin
b96ab2a8bf
iscsi-scst: Fix a race condition triggered by logout
...
This patch fixes the following crash:
general protection fault: 0000 [#1 ] PREEMPT SMP
Modules linked in: scst_local(O) iscsi_scst(O) scst_vdisk(O) libcrc32c scst(O) brd netconsole target_core_mod configfs 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 aesni_intel aes_x86_64 glue_he
lper parport_pc ppdev lrw gf128mul ablk_helper cryptd joydev microcode mperf psmouse i2c_piix4 processor button intel_agp intel_gtt agpgart lp parport hid_generic usbhid hid ext4 jbd2 mbcache floppy ata_piix
CPU: 0 PID: 7735 Comm: iscsiwr3 Tainted: G O 3.11.0-debug+ #1
Hardware name: Bochs Bochs, BIOS Bochs 01/01/2011
task: ffff88000850cfc0 ti: ffff88002ea5c000 task.ti: ffff88002ea5c000
RIP: 0010:[<ffffffffa038dd7b>] [<ffffffffa038dd7b>] target_del_all_sess+0x9b/0x180 [iscsi_scst]
RSP: 0018:ffff88002ea5dcc0 EFLAGS: 00010286
RAX: 00000000fffffffe RBX: dead0000000fefc0 RCX: 0000000000000001
RDX: ffff88000e609460 RSI: 001e00004f011780 RDI: ffff88000e609460
RBP: ffff88002ea5dce8 R08: 0000000000000001 R09: 0000000000000000
R10: 0000000000000000 R11: 0000000000000000 R12: ffff88000e6093b0
R13: ffff88000e609460 R14: 0000000000000000 R15: ffff88003e948158
FS: 0000000000000000(0000) GS:ffff88000f800000(0000) knlGS:0000000000000000
CS: 0010 DS: 0000 ES: 0000 CR0: 0000000080050033
CR2: 0000000000427248 CR3: 0000000036d64000 CR4: 00000000000407f0
Stack:
ffff88000e6093b0 ffff88003e85d600 ffff88003e948000 0000000000000030
0000000000000000 ffff88002ea5dd28 ffffffffa038002b 0000000000000001
ffff88003e55f880 ffff88002ea5dd28 ffffffffa0384d13 ffff88003e948000
Call Trace:
[<ffffffffa038002b>] cmnd_tx_end+0x1db/0x1e0 [iscsi_scst]
[<ffffffffa0384d13>] ? iscsi_do_send+0x23/0x60 [iscsi_scst]
[<ffffffffa0385021>] iscsi_send+0x2d1/0x480 [iscsi_scst]
[<ffffffff8104a802>] ? local_bh_enable_ip+0x82/0x110
[<ffffffffa0380e8f>] ? conn_get+0x1f/0x70 [iscsi_scst]
[<ffffffffa0385290>] scst_do_job_wr+0xc0/0x2d0 [iscsi_scst]
[<ffffffffa038560d>] istwr+0x16d/0x2e0 [iscsi_scst]
[<ffffffff8106a2e0>] ? wake_up_bit+0x40/0x40
[<ffffffffa03854a0>] ? scst_do_job_wr+0x2d0/0x2d0 [iscsi_scst]
[<ffffffff81069ea6>] kthread+0xd6/0xe0
[<ffffffff81069dd0>] ? kthread_create_on_node+0x110/0x110
[<ffffffff814debfc>] ret_from_fork+0x7c/0xb0
Code: 00 00 49 8b 94 24 b0 00 00 00 48 8b 1a 48 8d b2 c0 ee ff ff 48 81 eb 40 11 00 00 49 39 d5 74 28 44 89 f2 4c 89 e7 e8 15 fd ff ff <48> 8b 8b 40 11 00 00 48 89 de 48 8d 93 40 11 00 00 49 39 d5 48
[ 474.156827] RIP [<ffffffffa038dd7b>] target_del_all_sess+0x9b/0x180 [iscsi_scst]
RSP <ffff88002ea5dcc0>
Signed-off-by: Bart Van Assche <bvanassche@acm.org >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5019 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-10-03 05:04:15 +00:00
Vladislav Bolkhovitin
1342a944db
Fix recently discovered races in sessions management
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5018 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-10-03 04:24:39 +00:00
Vladislav Bolkhovitin
b1d5d64a7c
Add list_entry_in_list()
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5017 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-10-03 04:24:25 +00:00
Bart Van Assche
16cd03ea1b
nightly build: Update kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5016 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-10-02 10:48:46 +00:00
Vladislav Bolkhovitin
f27af1b46e
Fix incorrect NUMBER OF LOGICAL BLOCKS handling in WRITE SAME command
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5015 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-10-02 05:10:56 +00:00
Vladislav Bolkhovitin
69643b4b5d
Change write residual underflow handling
...
Now it writes only supplied amount of data.
Reported by Klaus Hochlehnert <Mailings@kh-dev.de >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5014 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-10-02 04:53:12 +00:00
Bart Van Assche
c296055104
fcst: Avoid that checkpatch complains about 'struct spinlock'
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5013 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-10-01 06:21:38 +00:00
Bart Van Assche
2e2dfc5e36
nightly build: Add kernel 3.11
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5007 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-28 16:05:52 +00:00
Bart Van Assche
dad77aead4
nightly build: Add kernel 3.11 build infrastructure
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5006 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-28 16:04:47 +00:00
Vladislav Bolkhovitin
9f8b8ca6d0
scst_pres: Fix spelling in a debug tracing statement
...
Change all occurrences of "APTL" into "APTPL" (Activate Persist
Through Power Loss).
Signed-off-by: Bart Van Assche <bvanassche@acm.org >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5005 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-28 04:31:39 +00:00
Vladislav Bolkhovitin
844e194647
Update for kernels 3.11.x
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5004 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-28 04:23:45 +00:00
Vladislav Bolkhovitin
719b8be3f7
Fix incorrect logging of negotiated data digest
...
Reported by Klaus Hochlehnert <Mailings@kh-dev.de >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5003 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-28 04:04:47 +00:00
Bart Van Assche
858d02e558
[PATCH] ib_srpt: Always set RSPVALID flag in task management replies
...
The SRP spec requires not only to set the RSPVALID flag and the RSP_CODE
field if a task management function failed but also if it succeeded. This
patch avoids that the SRP initiator interprets task managment functions
that succeeded as failed.
Reported-by: Jack Wang <jinpu.wang@profitbricks.com >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5002 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-27 13:40:58 +00:00
Vladislav Bolkhovitin
9d1d74e7a8
If vfs_readv()/vfs_writev() are used, loff will be adjusted automatically
...
+ cleanup
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5001 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-13 09:32:35 +00:00
Vladislav Bolkhovitin
5bd3752f7e
Cleanup
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@5000 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-13 07:29:54 +00:00
Bart Van Assche
4c2b6e8fe1
scst, implicit ALUA: Document locking strategy
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4999 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-12 10:09:58 +00:00
Vladislav Bolkhovitin
e3b9d00d97
qla2x00t: Simplify q2t_create_sess()
...
Replace a kmalloc() and sprintf() call by a kasprintf() call. This
patch does not change any functionality.
Signed-off-by: Bart Van Assche <bvanassche@acm.org >
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4998 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-11 22:44:04 +00:00
Vladislav Bolkhovitin
8a03df3ed0
Improve FORMAT UNIT
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4997 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-11 02:56:47 +00:00
Bart Van Assche
7eb2b54fca
nightly build: Update kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4996 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-10 18:01:55 +00:00
Vladislav Bolkhovitin
55bfd106f0
Cosmetics
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4995 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-10 04:03:14 +00:00
Vladislav Bolkhovitin
7ac1a842e2
If supported, unmap everything on FORMAT UNIT
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4994 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-10 03:58:46 +00:00
Vladislav Bolkhovitin
e913b69ef9
Cleanups
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4993 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-10 03:01:41 +00:00
Bart Van Assche
47c84d3ec8
ib_srpt: Build fix for r4984
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4992 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-09 05:46:22 +00:00
Bart Van Assche
08bfd4c19a
ib_srpt: Rework r4984 (skip Ethernet ports)
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4991 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-08 10:20:54 +00:00
Bart Van Assche
38a6e069fa
nightly build: Update kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4990 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-08 07:03:30 +00:00
Vladislav Bolkhovitin
a2ec09f24f
Web updates
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4989 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-07 04:44:26 +00:00
Bart Van Assche
6b6bcca4c8
scstadmin: Ensure that the version number can be parsed from inside Makefile.PL
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4988 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-06 06:39:25 +00:00
Vladislav Bolkhovitin
1d160d287e
Cosmetics
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4987 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-06 04:06:12 +00:00
Vladislav Bolkhovitin
be9ca893d5
Docs updates
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4986 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-04 01:50:55 +00:00
Bart Van Assche
c526e00d39
nightly build: Update kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4985 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-03 10:00:41 +00:00
Bart Van Assche
523e2b3e59
ib_srpt: Skip Ethernet ports
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4984 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-09-02 07:31:12 +00:00
Vladislav Bolkhovitin
592ed0b587
Cleanup: SCSI status/sense must be explicitly set in those functions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4982 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-30 02:49:45 +00:00
Vladislav Bolkhovitin
e329cc5abb
Make SCST patters matching, for instance, to match initiator names to their group names, case insensitive
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4981 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-28 22:47:21 +00:00
Bart Van Assche
85e9255f37
ib_srpt: Add P_Key support
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4980 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-27 06:39:45 +00:00
Bart Van Assche
9642081700
ib_srpt: Clean up srpt_handle_send_comp()
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4979 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-27 06:36:52 +00:00
Bart Van Assche
70017e3883
ib_srpt: Remove two statements that became superfluous from srpt_abort_cmd()
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4978 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-27 06:35:39 +00:00
Bart Van Assche
25059b6a81
nightly build: Update kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4977 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-21 09:54:18 +00:00
Bart Van Assche
fd5213ffe1
scst/src/scst_priv.h: Remove duplicate const since sparse complains about it
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4976 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-18 10:03:42 +00:00
Bart Van Assche
2ed2d3bce2
nightly build: Update kernel versions
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4975 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-16 11:07:58 +00:00
Vladislav Bolkhovitin
fac009829c
Cleanup and add scst_create_devt_attr() and scst_create_dev_attr() for symmetry
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4974 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-15 23:44:21 +00:00
Bart Van Assche
905acc6815
scst: Make scst_create_tgt_attr() return the correct error code
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4973 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-15 06:25:06 +00:00
Vladislav Bolkhovitin
c282b7964e
Simplify, fix and improve commands ordering
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4972 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-15 05:47:32 +00:00
Vladislav Bolkhovitin
24238e4654
Cleanup
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4971 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-15 05:43:27 +00:00
Vladislav Bolkhovitin
f8f2580fcd
From: Benjamin Black <Benjamin.Black@Emulex.Com>
...
There is not a way to specify an attribute that applies to only one
target or target driver. This patch provides such an interface.
Copyright (C) 2013 Emulex. All rights reserved.
This software is provided as-is, without any express or implied warranty. In
no event will Emulex be held liable for any damages arising from the use of
this software. Permission is granted to anyone to use this software for any
purpose, including commercial applications, and to alter it and redistribute it
freely. If you use this software in a product, an acknowledgment in the
product documentation would be appreciated, but is not required. This notice
may be removed from any source code distribution that includes all or any part
of the original software.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4970 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-15 05:34:33 +00:00
Bart Van Assche
886ae66326
fcst: Avoid triggering CRC errors at the initiator side
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4969 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-13 18:43:56 +00:00
Bart Van Assche
80ba881d46
fcst: Fix ft_abort_cmd()
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4968 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-13 18:43:26 +00:00
Bart Van Assche
e6610624ae
fcst: Report FC send errors
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4967 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-13 18:41:38 +00:00
Bart Van Assche
6c5328df1d
fcst: Use proper length variable for bidir commands in ft_recv_write_data()
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4966 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-13 18:41:17 +00:00
Bart Van Assche
76cc1e8857
fcst: Always report FC exchange errors
...
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4965 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2013-08-13 18:40:34 +00:00