Revision tags: release/14.0.0 |
|
#
685dc743 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: one-line .c pattern
Remove /^[\s*]*__FBSDID\("\$FreeBSD\$"\);?\s*\n/
|
#
4d846d26 |
| 10-May-2023 |
Warner Losh <imp@FreeBSD.org> |
spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD
The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch up to that fact and revert to their recommended match of
spdx: The BSD-2-Clause-FreeBSD identifier is obsolete, drop -FreeBSD
The SPDX folks have obsoleted the BSD-2-Clause-FreeBSD identifier. Catch up to that fact and revert to their recommended match of BSD-2-Clause.
Discussed with: pfg MFC After: 3 days Sponsored by: Netflix
show more ...
|
Revision tags: release/13.2.0, release/12.4.0, release/13.1.0, release/12.3.0, release/13.0.0 |
|
#
156c1ebe |
| 27-Nov-2020 |
Alexander Motin <mav@FreeBSD.org> |
Some code reorganization.
- Remove code duplication by adding two new functions to execute prepared queue entry via either mbox or request queue and wait for result. - Since the new function execu
Some code reorganization.
- Remove code duplication by adding two new functions to execute prepared queue entry via either mbox or request queue and wait for result. - Since the new function executing via request queue sleeps any way, make it sleep also in case of overflows or handle shortages. It should make it more reliable and less affecting other less flexible request queue users. - Turn isp_target_put_entry() into not target-specific isp_send_entry(). - Make handling of responses with control handles more universal. - Move RQSTYPE_RPT_ID_ACQ handling into new function. - Inline isp_handle_other_response(), becoming trivial after above. - Clean the list of IOCBs from pre-24xx ones.
show more ...
|
#
df9c69d2 |
| 27-Nov-2020 |
Alexander Motin <mav@FreeBSD.org> |
Restore break statement lost in r367857.
|
#
8cb0d414 |
| 26-Nov-2020 |
Alexander Motin <mav@FreeBSD.org> |
Remove some more dead code from pre-24xx.
|
#
b8e2395e |
| 20-Nov-2020 |
Alexander Motin <mav@FreeBSD.org> |
Increase queue depths from 1024/256 to 8192/1024 IOCBs.
Qlogic chips store S/G lists in the same queue as requests themselves. In the worst case 1MB I/O may require up to 52 IOCBs, that means queue
Increase queue depths from 1024/256 to 8192/1024 IOCBs.
Qlogic chips store S/G lists in the same queue as requests themselves. In the worst case 1MB I/O may require up to 52 IOCBs, that means queue of 1024 IOCBs can store only 19 of such requests. The increase reduces chances of overflow, while we should be able to afford additional 512KB of RAM per HBA. The Linux driver uses comparable numbers.
While there, decouple ATIO queue size from response queue size. There is no reason for them to be equal.
show more ...
|
#
f6854a0c |
| 20-Nov-2020 |
Alexander Motin <mav@FreeBSD.org> |
Cleanup DMA handling.
- Make isp_start() to set all the IOCB fields aside of S/G list, removing extra information from isp_send_cmd(), now only doing S/G lists and sending. - Turn DMA setup/free f
Cleanup DMA handling.
- Make isp_start() to set all the IOCB fields aside of S/G list, removing extra information from isp_send_cmd(), now only doing S/G lists and sending. - Turn DMA setup/free from being card and PCI-specific into OS-specific, instead add new card-specific method for isp_send_cmd(). Previously this function was a monster handling all the cards. - Remove double error code translation.
show more ...
|
#
1b760be4 |
| 20-Nov-2020 |
Alexander Motin <mav@FreeBSD.org> |
Remove parallel SCSI and 1/2Gb FC support from isp(4).
This removes 288KB (36%) of the driver code and zillions of hacks and workarounds, making single driver uniformly support several different gen
Remove parallel SCSI and 1/2Gb FC support from isp(4).
This removes 288KB (36%) of the driver code and zillions of hacks and workarounds, making single driver uniformly support several different generations of hardware interfaces, not counting minor card variations. After years of the hopeless fight, I don't think it worth to continue support for hardware obsolete for 15-20 years. Instead much cleaner now code should allow to move forward toward better locking, multiple queues and other cool features.
All the remaining Qlogic cards starting from 4Gb 24xx to 32Gb 27xx use the same hardware/firmware interface with minor incremental improvements, so it seems to be a good new starting point. Except one PCI-X model all all of them are PCIe and so still usable in modern systems.
Discussed with: ken, scottl, jpaetzel, imp Relnotes: yes
show more ...
|
Revision tags: release/12.2.0, release/11.4.0, release/12.1.0, release/11.3.0, release/12.0.0, release/11.2.0 |
|
#
718cf2cc |
| 27-Nov-2017 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
sys/dev: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I was using misidentified many licenses so this was mostly a manual - error
sys/dev: further adoption of SPDX licensing ID tags.
Mainly focus on files that use BSD 2-Clause license, however the tool I was using misidentified many licenses so this was mostly a manual - error prone - task.
The Software Package Data Exchange (SPDX) group provides a specification to make it easier for automated tools to detect and summarize well known opensource licenses. We are gradually adopting the specification, noting that the tags are considered only advisory and do not, in any way, superceed or replace the license texts.
show more ...
|
Revision tags: release/10.4.0, release/11.1.0 |
|
#
9c81a61e |
| 19-Mar-2017 |
Alexander Motin <mav@FreeBSD.org> |
Remove hackish code delaying ATIOs to unknown virtual port.
Since we support RQSTYPE_RPT_ID_ACQ, that functionality is only useful in loop mode, which probably doesn't worth having this hack in 2017
Remove hackish code delaying ATIOs to unknown virtual port.
Since we support RQSTYPE_RPT_ID_ACQ, that functionality is only useful in loop mode, which probably doesn't worth having this hack in 2017.
MFC after: 2 weeks
show more ...
|
#
e2a658cb |
| 19-Mar-2017 |
Alexander Motin <mav@FreeBSD.org> |
Move <= 23xx PDB workaround to generic code.
It is chip-specific and has nothing to do with platform.
MFC after: 2 weeks
|
#
5a5632c2 |
| 19-Mar-2017 |
Alexander Motin <mav@FreeBSD.org> |
Move 24xx RQSTYPE_NOTIFY handling to generic code.
This code has nothing to do with specific platform.
MFC after: 2 weeks
|
#
87b04de6 |
| 18-Mar-2017 |
Alexander Motin <mav@FreeBSD.org> |
Reorganize RQSTYPE_NOTIFY handling for chips <= 23xx.
There were two copies of the code: one in generic code was half-broken, and another in platform code was never called. Leave only one in generi
Reorganize RQSTYPE_NOTIFY handling for chips <= 23xx.
There were two copies of the code: one in generic code was half-broken, and another in platform code was never called. Leave only one in generic code and working.
MFC after: 2 weeks
show more ...
|
#
981ffc4e |
| 18-Mar-2017 |
Alexander Motin <mav@FreeBSD.org> |
Move RQSTYPE_ABTS_RCVD parsing into generic code.
MFC after: 2 weeks
|
#
15c62456 |
| 18-Mar-2017 |
Alexander Motin <mav@FreeBSD.org> |
Extend nt_lun to full 8 byte.
MFC after: 2 weeks
|
#
98b08fbe |
| 18-Mar-2017 |
Alexander Motin <mav@FreeBSD.org> |
Remove dead remnants of SPI target.
MFC after: 2 weeks
|
#
782a8e7c |
| 18-Mar-2017 |
Alexander Motin <mav@FreeBSD.org> |
Use isp_target_put_entry() in places where it can be.
This unifies the code and removes some duplication.
MFC after: 2 weeks
|
#
44a2a27a |
| 18-Mar-2017 |
Alexander Motin <mav@FreeBSD.org> |
Do some notify acks cleanup.
ISPASYNC_TARGET_NOTIFY_ACK makes no sense without argument.
MFC after: 2 weeks
|
#
9c2e9bcf |
| 14-Mar-2017 |
Alexander Motin <mav@FreeBSD.org> |
Remove some dead/broken code paths around async handling
MFC after: 2 weeks
|
#
229203af |
| 12-Mar-2017 |
Alexander Motin <mav@FreeBSD.org> |
Remove code for unsupported FreeBSD versions.
MFC after: 2 weeks
|
#
be649680 |
| 28-Feb-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r314270 through r314419.
|
#
a6036a44 |
| 26-Feb-2017 |
Alexander Motin <mav@FreeBSD.org> |
Fix residual length reporting in target mode.
This allows to properly handle cases when target wants to receive or send more data then initiator wants to send or receive. Previously in such cases i
Fix residual length reporting in target mode.
This allows to properly handle cases when target wants to receive or send more data then initiator wants to send or receive. Previously in such cases isp(4) returned CAM_DATA_RUN_ERR, while now it returns resid > 0.
MFC after: 2 weeks
show more ...
|
#
6ae9acde |
| 23-Feb-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r313896 through r314128.
|
#
8290ea90 |
| 22-Feb-2017 |
Alexander Motin <mav@FreeBSD.org> |
Fix multiple problems around LUN disable under load.
- Move private data about ATIOs/INOTs from per-LUN to per-channel data. This allows active commands to continue operation after LUN destruction.
Fix multiple problems around LUN disable under load.
- Move private data about ATIOs/INOTs from per-LUN to per-channel data. This allows active commands to continue operation after LUN destruction. This also simplifies lookup of the data by tag in some situations. - Unify three restart_queue processing implementations. - Complete all ATIOs from restart_queue on LUN disable. - Delete ATIO private data when command completed or aborted, not depending on the ATIO being requeued, that was ugly hack and could never happen. CAM should always call ether XPT_CONT_TARGET_IO with status or XPT_ABORT. - Implement XPT_ABORT for queued ATIOs/INOTs to allow CAM do graceful shutdown, not depending on LUN disable, as it is done in ahd(4)/targ(4). - Unify isp_endcmd() arguments to make it more usable in generic code. - Remove never really used LUN state reference counter.
MFC after: 2 weeks
show more ...
|
Revision tags: release/11.0.1, release/11.0.0 |
|
#
352427b3 |
| 19-May-2016 |
Alexander Motin <mav@FreeBSD.org> |
Add proper reporting for early task management errors.
This covers unknown requests and requests to unknown virtual ports. Previously it "worked" only because of timeout handling on initiator.
|