8786 Commits

Author SHA1 Message Date
Stanislaw Gruszka
7a93ba59a8 Map properly task management function codes from low level driver to scst.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@186 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-09-10 10:09:30 +00:00
Mark Buechler
3c952e4d0f - Allow for empty groups (groups with no users) for iSCSI.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@185 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-09-07 19:48:20 +00:00
Mark Buechler
cf4c66e1f4 - Fix really stupid mistake where config commits were using same path
for each device.
- Added option processing. The new API wants the option BLOCKIO,
  but SCST then shows the device having been opened with
  option BIO. We now warp BIO to BLOCKIO.
- Added the concept of handler aliases. Handler vdisk with
  option BLOCKIO shows as a handler of vdisk_blk. We now
  warp vdisk_blk to just vdisk.



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@184 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-09-07 19:04:51 +00:00
Stanislaw Gruszka
fbb45ff0f7 - Do not print lot of info about notify event.
- Check bp->scst_tgt agains NULL only once when command is processed


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@183 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-09-05 11:38:19 +00:00
Stanislaw Gruszka
df886318a9 - Search bus only once when process scsi command (tmd).
- Pass to SCST port WWN as registration name.
- Avoid race condition when we receive new tmd and bp->scst_tmd
  may (or not) be NULL.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@182 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-09-05 10:20:44 +00:00
Stanislaw Gruszka
1db177f0dc Initialize with zeros fresh allocated ini_t.
Free low level driver memory on error.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@181 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-09-04 11:07:50 +00:00
Stanislaw Gruszka
e151feff2d Bugfix, do not zero resource which someone may actually use.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@180 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-09-01 11:44:37 +00:00
Stanislaw Gruszka
d31e5941e7 Avoid race conditions related with registration and unregistration hba's.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@179 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-31 13:01:22 +00:00
Stanislaw Gruszka
59cfad3952 Get irq number from PCI subsystem after irq routing mechanism (like ACPI)
set it up. Otherwise we get irq number from legacy BIOS range and proper irq 
(other number from PCI range) is not handled or handled by other driver - 
- VERY VERY BAD THINGS happen then. 


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@178 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-31 09:40:17 +00:00
Stanislaw Gruszka
0c7c155d7f Add workaround for devices which have broken autosense mode. It is compile
time selectable. In run-time it is turned on only for 24xx chipsets. With 
this workaround (hopply) we don't need to limit queue length (see comment 
in patch).


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@177 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-31 09:28:08 +00:00
Vladislav Bolkhovitin
304d24d34c Fixed incorrect #if statement. Reported by jzh800mail@126.com.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@176 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-29 16:16:30 +00:00
Vladislav Bolkhovitin
b56f1075b9 - Fixed make headers_check problem, reported by Doug Dumitru <doug@easyco.com>
- Improved rebuilt warning as suggested by Tomasz Chmielewski <mangoo@wpkg.org>
 - Minor cleanups 


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@175 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-29 15:07:40 +00:00
Vladislav Bolkhovitin
0c22a4866a Minor changes based on comments from Tomasz Chmielewski <mangoo@wpkg.org>, Benjamin Yates <benjamin@rqdq.com> and Andy <AndrewL733@aol.com>
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@174 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-29 09:52:07 +00:00
Vladislav Bolkhovitin
ef588acdf3 - Fixed several iSCSI RFC violations in TM area, added necessary support in the SCST core
- Some minor TM handling improvements
 - Some cleanups


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@173 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-28 17:32:31 +00:00
Vladislav Bolkhovitin
fd6744d33e scst_fileio renamed to scst_vdisk
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@172 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-27 10:49:04 +00:00
Vladislav Bolkhovitin
eafe9cfb46 Sample scstadmin .conf added
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@171 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-27 10:01:48 +00:00
Vladislav Bolkhovitin
476900e0fe - Calling pre_exec() moved to the separate state
- Minor cleanups 


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@170 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-24 16:54:19 +00:00
Vladislav Bolkhovitin
1d694781ee scsi_tgt renamed to scst
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@169 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-24 16:40:56 +00:00
Vladislav Bolkhovitin
715cc7edb3 Fixed compilation problem when any module using net_get_page()/net_put_page() built as a module.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@168 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-23 16:00:57 +00:00
Vladislav Bolkhovitin
918c113858 - Updated to the latest IET (r137)
- ToDo note added


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@167 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-23 15:29:44 +00:00
Vladislav Bolkhovitin
d224057476 Copyrights updated
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@166 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-23 15:28:18 +00:00
Vladislav Bolkhovitin
044a6987d9 "iSCSI Enterprise" ranamed to "iSCSI-SCST"
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@165 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-16 09:19:34 +00:00
Vladislav Bolkhovitin
21f6a17d83 scsi_tgt.ko renamed to scst.ko
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@164 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-16 09:04:05 +00:00
Vladislav Bolkhovitin
5d4789c8c0 ISCSI-SCST updates
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@163 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-15 09:59:46 +00:00
Vladislav Bolkhovitin
e6a57baa14 The initial commit of iSCSI-SCST
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@162 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-15 09:28:54 +00:00
Vladislav Bolkhovitin
1d3da41d62 Minor fixes
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@161 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-14 17:08:43 +00:00
Vladislav Bolkhovitin
56be023a73 - Version changed in scst_user_spec.txt
- Minor fixes


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@160 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-14 17:03:42 +00:00
Vladislav Bolkhovitin
83d65b018c - Call of pre_unreg_sess() moved to scst_mgmt_thread, because of scst_mutex deadlock with scst_user's pre_unreg_sess() handler
- scst_check_local_events() cleanups
 - In scst_user notification about aborted commands added, user space interface changed
 - Other minor fixes and cleanups


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@159 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-14 16:54:54 +00:00
Vladislav Bolkhovitin
89ca743fc6 Fixes a race, when an event comes on the driver unload, so DPC thread will try to use already half destroyed data.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@158 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-10 08:40:54 +00:00
Vladislav Bolkhovitin
07f8f231c1 - Docs updated
- Minor fix


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@157 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-08 09:52:23 +00:00
Vladislav Bolkhovitin
48effdd529 - Implemented temporary workaround to work on 2.6.22+ kernels
- qla2x00-target/ChangeLog updated
 - Typo in scst_page.html fixed


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@156 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-07 17:12:21 +00:00
Vladislav Bolkhovitin
5cdb901fea - In scst_user fixed potential deadlock
- scst_check_local_events() added
 - Minor cleanups and fixes 


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@155 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-08-03 09:57:15 +00:00
Vladislav Bolkhovitin
10f17420b5 - Device blocking cleanups and fixes
- tags logging made unsigned 


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@154 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-31 14:21:46 +00:00
Vladislav Bolkhovitin
b28d1b9905 - Semaphores converted to mutexes
- pre_exec() callback added
 - *_DBG_SPECIAL() macroses added 



git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@153 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-30 11:21:04 +00:00
Vladislav Bolkhovitin
5814b4ba13 Partial update for 2.6.22
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@152 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-23 11:51:05 +00:00
Vladislav Bolkhovitin
0f286f40f5 Update for 64-bit tags
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@151 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-18 08:50:50 +00:00
Vladislav Bolkhovitin
cf596b177d Patch from Terry Greeniaus:
We use the 64-bit tag field in the SRP commands to store information allowing us to track each command.  However, SCST only saves/uses 32-bits out of this 64-bit field.  This causes our code to fail when we get a response SRP command that doesn't match any tags we used.

I have updated SCST to work with our product by changing it to save all 64-bits of the tag.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@150 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-18 08:41:44 +00:00
Vladislav Bolkhovitin
081c39036f Patch from Nathan Bullock.
We are using OFED target machines to export a large number of disks, many of which are just NULLIO disks, but we have noticed that VPD numbers have a significant tendency to conflict. For example if we name one disk abc12 and another abc21 they will end up with the same VPD.

We are using a quick, slightly hackish way to solve this, by just creating a random hash for each ascii value and then rotating that hash based on the position of the character in the name. If you would like here is our changes.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@149 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-13 15:02:20 +00:00
Vladislav Bolkhovitin
4a44c43a61 Few minor races fixed
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@148 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-13 09:34:25 +00:00
Stanislaw Gruszka
e37c03bbd7 Little comment fix.
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@147 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-11 09:30:10 +00:00
Vladislav Bolkhovitin
c7e8a55dc6 lun_t changed to 64 bits. Don't know why it was 32 bits
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@146 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-10 16:47:43 +00:00
Vladislav Bolkhovitin
7181d89244 Patch from Stanislaw Gruszka:
- pass FC transport error to SCST
- give SCST info about WWN of remote initiator
- info about expected transfer length and direction
- unifying printk error messages


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@145 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-10 16:39:38 +00:00
Vladislav Bolkhovitin
c3a9c36297 trace_buf_lock implemented
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@144 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-05 16:23:09 +00:00
Vladislav Bolkhovitin
f401303211 Added previously renamed (deleted) patches
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@143 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-05 14:39:37 +00:00
Vladislav Bolkhovitin
d219b55b8b - Kernel patches were renamed (in this commit only deleted)
- VDISK_ONLY was removed, SCSI_EXEC_REQ_FIFO_DEFINED, defined by corresponding kernel patch used instead
 - Minor fixes
 - Docs updates

All users will need to revert old SCST kernel patch and apply the corresponding new one.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@142 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-05 14:37:36 +00:00
Vladislav Bolkhovitin
51e3149648 Separate block devices from non-block ones
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@141 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-05 14:20:17 +00:00
Vladislav Bolkhovitin
3ab4521950 Patch from Alessandro Premoli:
First, the problem: you cannot calculate sgv_max_local_order and 
sgv_max_trans_order by excess and then compare them with 
get_order(size). The maximum number of local (SG + trans) entries may be 
112 (like in amd64 case) and you bzero 128 sg_entries for every 
allocation request between 65 and 128 pages because the order is the 
same. This is the reason why single transfers of (70 * PAGE_SIZE) = 
~285k or more fail on amd64. On i386 the limit is higher, since you can 
shrink more records in one page, and so it's very difficult to reach.

Now, the solution: I created a patch, which consists in decreasing
sgv_max_local_order and sgv_max_trans_order by 1.


git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@140 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-07-02 11:36:22 +00:00
Vladislav Bolkhovitin
772e541dd6 Fix of WARN_ON_ONCE() braindamage
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@139 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-06-29 09:41:09 +00:00
Vladislav Bolkhovitin
2eb776e47c Patch from Alessandro Premoli fixes all the warnings of scst on 64-bit platforms
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@138 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-06-27 16:19:38 +00:00
Vladislav Bolkhovitin
b7004e4110 Minor debug changes
git-svn-id: http://svn.code.sf.net/p/scst/svn/trunk@137 d57e44dd-8a1f-0410-8b47-8ef2f437770f
2007-06-27 10:41:44 +00:00