Commit Graph

3064 Commits

Author SHA1 Message Date
Vladislav Bolkhovitin
ab25cb45dc Micro-optimize scst_calc_block_shift()
Replace a loop by a single instruction, namely bsr (bit scan reverse).
From the disassembler output of scst_calc_block_shift() on an x86_64
system:

   0x0000000000001493 <+35>:    bsr    %edx,%ecx

Signed-off-by: Bart Van Assche <bvanassche@acm.org>



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4134 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-17 01:43:21 +00:00
Vladislav Bolkhovitin
659e6ea6e8 Install man pages as well. Noticed by Bart Van Assche <bvanassche@acm.org>.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4133 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-17 01:38:16 +00:00
Bart Van Assche
5eb3a85948 scst/src/scst_lib.c: Remove a trailing whitespace
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4132 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-16 10:27:18 +00:00
Vladislav Bolkhovitin
293c2f3abd Slightly modified patch from Bart Van Assche <bvanassche@acm.org> cleaning VERIFY commands processing
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4131 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-15 22:32:05 +00:00
Bart Van Assche
448a7bdd29 scstadmin: Replace scstadmin/scstadmin by a soft link if it is a regular file. This is a workaround for a bug in the "Download tarball" functionality of the SourceForge website
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4129 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-15 10:02:06 +00:00
Bart Van Assche
dfaf6388f2 ib_srpt: Display the qpn when QP initialization fails
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4128 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-14 19:48:07 +00:00
Vladislav Bolkhovitin
c9b149c5ce Let's stay on the safe side away from gcc bugs and separate ints and bitfields with another access rules
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4127 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-13 22:35:52 +00:00
Bart Van Assche
fab05915ad ib_srpt: Reset a QP before transitioning it to the INIT state. That
should avoid that an error message like the following is generated if
driver and HCA QP state get out of sync:

mlx4_core 0000:03:00.0: command 0x19 failed: fw status = 0x9


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4123 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-13 17:06:50 +00:00
Bart Van Assche
a5a4d5ca6c ib_srpt: Increase RDMA_COMPL_TIMEOUT_S in order to avoid that the IB completion timeout fires too early on flaky motherboards
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4122 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-11 10:29:22 +00:00
Bart Van Assche
13e3b5265c Remove scripts/generate-kernel-with-srp-patches since all code in it is now upstream
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4121 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-11 10:25:55 +00:00
Bart Van Assche
f2c201ee09 Add scripts/generate-scst-patch, which is based on a script posted on scst-devel by Chetan Loke
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4120 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-11 10:23:59 +00:00
Vladislav Bolkhovitin
37cbdb03df Minor docs update based on experience of Rommer <rommer@active.by>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4119 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-11 03:01:00 +00:00
Vladislav Bolkhovitin
6a34f10d81 Cleanup suggested by Bart Van Assche <bvanassche@acm.org>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4118 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-10 02:12:15 +00:00
Bart Van Assche
47134aad53 nightly build: Update kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4117 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-09 11:53:31 +00:00
Vladislav Bolkhovitin
3f6ecca6ff Docs clarification
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4116 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-08 19:08:53 +00:00
Bart Van Assche
25ccc656d9 rebuild-rhel-kernel-rpm: Pass %_topdir to all rpm commands, just to be sure.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4115 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-05 20:28:38 +00:00
Bart Van Assche
3f2b4e531c scripts/rebuild-rhel-kernel-rpm: Update CentOS SRPM URLs and use rpmbuild --define instead of modifying $HOME/.rpmmacros.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4114 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-05 19:30:37 +00:00
Bart Van Assche
8d8d45f0bf nightly build: Update kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4113 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-05 10:54:30 +00:00
Bart Van Assche
f944799e42 iscsi-scst: Port to RHEL 5.7
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4112 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-04 16:41:21 +00:00
Bart Van Assche
c31ac7c591 scst: Port to RHEL 5.7
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4111 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-04 16:40:33 +00:00
Bart Van Assche
85b89521f8 iscsi-scstd: Make really sure that the buffer allocated for nl_read() is large enough
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4110 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-04 16:39:26 +00:00
Bart Van Assche
fdeea7c916 iscsi-scstd: Follow-up for r4077 - avoid that reading from the netlink socket can cause data corruption
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4109 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-04 12:39:26 +00:00
Bart Van Assche
62dd759208 fcst: Transform r4107 into something that makes sense
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4108 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-03 09:13:00 +00:00
Bart Van Assche
1d17e6386c fcst: Follow-up for r4106 - make fcst build again on kernel 3.0 and before
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4107 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-02 19:24:05 +00:00
Bart Van Assche
b6e5aa684c Source: http://marc.info/?l=linux-scsi&m=132812597504750
From: "Paul E. McKenney" <paul.mckenney@linaro.org>

The call_rcu() in ft_tport_delete() invokes ft_tport_rcu_free(),
which just does a kfree().  So convert the call_rcu() to kfree_rcu(),
allowing ft_tport_rcu_free() to be eliminated.

Signed-off-by: Paul E. McKenney <paul.mckenney@linaro.org>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: "Nicholas A. Bellinger" <nab@linux-iscsi.org>
Cc: Jiri Kosina <jkosina@suse.cz>
Cc: Jesper Juhl <jj@chaosbits.net>
Cc: linux-scsi@vger.kernel.org
Cc: target-devel@vger.kernel.org
---
 drivers/target/tcm_fc/tfc_sess.c |   12 +-----------
 1 files changed, 1 insertions(+), 11 deletions(-)

diff --git a/drivers/target/tcm_fc/tfc_sess.c b/drivers/target/tcm_fc/tfc_sess.c
index 4c0507c..eff512b 100644
--- a/drivers/target/tcm_fc/tfc_sess.c
+++ b/drivers/target/tcm_fc/tfc_sess.c
@@ -86,16 +86,6 @@ static struct ft_tport *ft_tport_create(struct fc_lport *lport)
 }
 
 /*
- * Free tport via RCU.
- */
-static void ft_tport_rcu_free(struct rcu_head *rcu)
-{
-	struct ft_tport *tport = container_of(rcu, struct ft_tport, rcu);
-
-	kfree(tport);
-}
-
-/*
  * Delete a target local port.
  * Caller holds ft_lport_lock.
  */
@@ -114,7 +104,7 @@ static void ft_tport_delete(struct ft_tport *tport)
 		tpg->tport = NULL;
 		tport->tpg = NULL;
 	}
-	call_rcu(&tport->rcu, ft_tport_rcu_free);
+	kfree_rcu(tport, rcu);
 }
 
 /*
-- 
1.7.8


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4106 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-02-02 19:11:33 +00:00
Vladislav Bolkhovitin
3320da76c5 Version updated to 2.2.0
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4105 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-26 05:48:19 +00:00
Vladislav Bolkhovitin
a8b47304a1 Update for 2.2.0 release
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4104 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-26 05:43:48 +00:00
Vladislav Bolkhovitin
167a7bafa5 Fix race for sess between q2t_del_sess_work_fn() and q2t_clear_tgt_db() as well as other similar places
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4101 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-26 05:00:28 +00:00
Vladislav Bolkhovitin
40ff4978ab IRQ handlers can be called without IRQs disabled and IRQF_DISABLED
doesn't work with IRQF_SHARED on modern kernels.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4100 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-26 04:59:39 +00:00
Vladislav Bolkhovitin
05f29dd542 Fix compilation for SuSe 2.6.32.46 kernel
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4099 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-26 04:58:36 +00:00
Bart Van Assche
c3fb0dd2b9 nightly build: Include scst_proc.c only if necessary
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4090 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-23 15:15:52 +00:00
Bart Van Assche
9de7980a91 nightly build: Revert r4088 - scst_proc.c is needed in order to build with against an older kernel version
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4089 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-23 09:42:40 +00:00
Bart Van Assche
90f845c9d6 nightly build: Ignore procfs code
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4088 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-22 12:56:17 +00:00
Bart Van Assche
b8a38346eb ib_srpt: Update ChangeLog
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4086 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-21 18:03:30 +00:00
Bart Van Assche
6fbdc157d6 ib_srpt: Revert r3920 because the performance improvement is minor and with certain initiators it can cause performance to fluctuate
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4083 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-21 17:47:48 +00:00
Bart Van Assche
a8f25c1cc2 ib_srpt: Remove an obsolete section from the README file and add a FAQ section
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4082 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-21 16:58:53 +00:00
Vladislav Bolkhovitin
0bab130bfe Web updates
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4081 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-20 20:10:00 +00:00
Vladislav Bolkhovitin
8e5eafb7c3 Forgotten tcp_zero_copy.c added
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4080 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-20 03:13:11 +00:00
Bart Van Assche
7a8bf68a3d nightly build: Add kernel version 3.2
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4079 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-19 07:59:18 +00:00
Bart Van Assche
10bcf70cc6 Add files necessary for 3.2 nightly build
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4078 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-19 07:58:37 +00:00
Vladislav Bolkhovitin
9da517bae1 Update for kernel 3.2. Netlink part in iSCSI-SCST done by Bart Van Assche <bvanassche@acm.org>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4077 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-18 23:48:02 +00:00
Bart Van Assche
4904b9d0e3 ib_srpt: Make the srp_max_rdma_size module parameter non-executable.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4076 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-18 18:53:56 +00:00
Bart Van Assche
b78174e204 nightly build: Update kernel versions
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4075 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-16 10:27:13 +00:00
Bart Van Assche
cb5cc4592c scstadmin: Document the ISCSID_OPTIONS variable in the /etc/default/scst man page. That variable was added in r4066.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4073 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-16 10:23:06 +00:00
Vladislav Bolkhovitin
f9126313e8 Better don't decode vendor opcode 0x24 for block devices, because the
current decoding is incorrect anyway.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4072 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-15 00:09:03 +00:00
Bart Van Assche
6ee7d621d6 ib_srpt: Clear the cm_id->context pointer before freeing a channel
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4071 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-13 19:49:44 +00:00
Bart Van Assche
e0d291a9f7 scripts/run-regression-tests: Check sparse exit code
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4070 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-13 14:22:55 +00:00
Bart Van Assche
704410f264 ib_srpt: Builds again on kernel 3.1 and before / avoid uninitialized fields in srq_attr in case that structure is extended once more in the future
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4069 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-13 14:05:23 +00:00
Bart Van Assche
02be9382b5 ib_srpt: Initialize ib_srq_init_attr.srq_type such that ib_qip doesn't return -ENOSYS when trying to create an SRQ
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4068 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-13 13:50:23 +00:00
Bart Van Assche
ddbe1c0770 ib_srpt: Rework r4063
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@4067 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2012-01-12 19:17:50 +00:00