#
6332e0f1 |
| 22-Nov-2023 |
Alexander Motin <mav@FreeBSD.org> |
CAM: Remove return value from xpt_path_sbuf()
It is wrong to call sbuf_len() on third-party sbuf. If that sbuf has a drain function, it ends up in assertion. But even would it work, it would retur
CAM: Remove return value from xpt_path_sbuf()
It is wrong to call sbuf_len() on third-party sbuf. If that sbuf has a drain function, it ends up in assertion. But even would it work, it would return not newly written length, but the full one. Searching through the sources I don't see this value used.
show more ...
|
Revision tags: release/14.0.0 |
|
#
70f2356d |
| 02-Nov-2023 |
Warner Losh <imp@FreeBSD.org> |
cam: Make cam_debug macros atomic
The CAM_DEBUG* macros use multiple printfs to dump the data. This is suboptimal when tracing things that produce even a moderate amount since it gets intertwingled.
cam: Make cam_debug macros atomic
The CAM_DEBUG* macros use multiple printfs to dump the data. This is suboptimal when tracing things that produce even a moderate amount since it gets intertwingled. I can't even turn on tracing with a 24-disk HBA on boot without it getting messed up. Add helper routines to work around clang's over-use of the stack: that way we only pay the stack penalty when a trace hits.
Sponsored by: Netflix Reviewed by: ken, mav Differential Revision: https://reviews.freebsd.org/D42411
show more ...
|
#
95ee2897 |
| 16-Aug-2023 |
Warner Losh <imp@FreeBSD.org> |
sys: Remove $FreeBSD$: two-line .h pattern
Remove /^\s*\*\n \*\s+\$FreeBSD\$$\n/
|
#
7af2f2c8 |
| 25-Jul-2023 |
Warner Losh <imp@FreeBSD.org> |
cam: Migrate to modern uintXX_t from u_intXX_t
As per https://lists.freebsd.org/archives/freebsd-scsi/2023-July/000257.html move to the modern uintXX_t.
MFC After: 3 days Sponsored by: Netflix
|
#
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 |
|
#
50aa1daf |
| 29-Jun-2021 |
Warner Losh <imp@FreeBSD.org> |
cam: change xpt_clone_path to return int
xpt_clone_path originally returned a cam_status, but it doesn't do I/O and should return an errno instead. I added it last year and it's only used in one pla
cam: change xpt_clone_path to return int
xpt_clone_path originally returned a cam_status, but it doesn't do I/O and should return an errno instead. I added it last year and it's only used in one place. It's not yet documented, so no doc changes are nneeded.
Reviewed by: scottl@, mav@ Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D30884
show more ...
|
#
1ed40162 |
| 28-Jun-2021 |
Warner Losh <imp@FreeBSD.org> |
cam: add xpt_path_sim_device to return device_t associated with a path
Return the device associated with the sim's bus when it called xpt_bus_register, if any. Most real SIMs in the tree set this de
cam: add xpt_path_sim_device to return device_t associated with a path
Return the device associated with the sim's bus when it called xpt_bus_register, if any. Most real SIMs in the tree set this device, but some virtual ones do not have a device_t assocaited with them.
Reviewed by: scottl@, mav@ (earlier version) Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D30853
show more ...
|
#
9f1e411a |
| 28-Jun-2021 |
Warner Losh <imp@FreeBSD.org> |
cam: Group all xpt_path*() functions together in cam_xpt.h
Reviewed by: scottl@ Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D30852
|
Revision tags: release/13.0.0, release/12.2.0 |
|
#
27dcd3d9 |
| 02-Sep-2020 |
Mateusz Guzik <mjg@FreeBSD.org> |
cam: clean up empty lines in .c and .h files
|
#
f66ca1b1 |
| 20-Jun-2020 |
Warner Losh <imp@FreeBSD.org> |
Use the more descriptive src_ccb and dst_ccb for the two ccbs being merged.
MFC after: 1 week
|
Revision tags: release/11.4.0 |
|
#
3dfb13c1 |
| 11-Mar-2020 |
Warner Losh <imp@FreeBSD.org> |
Eliminate xpt_copy_path.
It's used in exactly one place. In that place it's used so we can hold the lock on the device associated with the path (since we do a xpt_path_lock and unlock pair around th
Eliminate xpt_copy_path.
It's used in exactly one place. In that place it's used so we can hold the lock on the device associated with the path (since we do a xpt_path_lock and unlock pair around the callback). Instead, inline taking and dropping the reference to the device so we can ensure we can unlock the mutex after the callback finishes if the path in the ccb that's queued to be processed by xpt_scanner_thread is destroyed while being processed. We don't actually need the path itself for anything other than dereferencing it to get the device to do the lock and unlock.
This also makes the locking / use model for cam_path a little cleaner by eliminating a case where we needlessly copy the object.
Reviewed by: chuck, chs, ken Differential Revision: https://reviews.freebsd.org/D24008
show more ...
|
Revision tags: release/12.1.0, release/11.3.0, release/12.0.0 |
|
#
3611ec60 |
| 18-Aug-2018 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r337646 through r338014.
|
#
0cc28e3c |
| 13-Aug-2018 |
Warner Losh <imp@FreeBSD.org> |
Create xpt_sim_poll and refactor a bit using it.
xpt_sim_poll takes the sim to poll as an argument. It will do the proper locking protocol, call the SIM polling routine, and then call camisr_runqueu
Create xpt_sim_poll and refactor a bit using it.
xpt_sim_poll takes the sim to poll as an argument. It will do the proper locking protocol, call the SIM polling routine, and then call camisr_runqueue to process completions on any CCBs the SIM's poll routine completed. It will be used during late shutdown when a SIM is waiting for CCBs it sent during shutdown to finish and the scheduler isn't running because we've panic'd.
This sequence was used twice in cam_xpt, so refactor those to use this new function.
Sponsored by: Netflix Differential Review: https://reviews.freebsd.org/D16663
show more ...
|
Revision tags: release/11.2.0 |
|
#
762a7f4f |
| 07-Dec-2017 |
Warner Losh <imp@FreeBSD.org> |
Define xpt_path_inq.
This provides a nice wrarpper around the XPT_PATH_INQ ccb creation and calling.
Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D13387
|
#
f93a843c |
| 07-Dec-2017 |
Warner Losh <imp@FreeBSD.org> |
Make cam_periph_runccb be safe to call when we can only do polling.
Sponsored by: Netflix Differential Revision: https://reviews.freebsd.org/D13388
|
#
bec9534d |
| 27-Nov-2017 |
Pedro F. Giffuni <pfg@FreeBSD.org> |
sys/cam: 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/cam: 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 |
|
#
531c2d7a |
| 24-Jul-2017 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r320180
|
#
bca9d05f |
| 23-Jul-2017 |
Hans Petter Selasky <hselasky@FreeBSD.org> |
Merge ^/head r319973 through 321382.
|
Revision tags: release/11.1.0 |
|
#
d2043ca3 |
| 14-Jul-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r320573 through r320970.
|
#
a94a63f0 |
| 09-Jul-2017 |
Warner Losh <imp@FreeBSD.org> |
An MMC/SD/SDIO stack using CAM
Implement the MMC/SD/SDIO protocol within a CAM framework. CAM's flexible queueing will make it easier to write non-storage drivers than the legacy stack. SDIO drivers
An MMC/SD/SDIO stack using CAM
Implement the MMC/SD/SDIO protocol within a CAM framework. CAM's flexible queueing will make it easier to write non-storage drivers than the legacy stack. SDIO drivers from both the kernel and as userland daemons are possible, though much of that functionality will come later.
Some of the CAM integration isn't complete (there are sleeps in the device probe state machine, for example), but those minor issues can be improved in-tree more easily than out of tree and shouldn't gate progress on other fronts. Appologies to reviews if specific items have been overlooked.
Submitted by: Ilya Bakulin Reviewed by: emaste, imp, mav, adrian, ian Differential Review: https://reviews.freebsd.org/D4761
merge with first commit, various compile hacks.
show more ...
|
#
be649680 |
| 28-Feb-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r314270 through r314419.
|
#
2379d1d6 |
| 25-Feb-2017 |
Warner Losh <imp@FreeBSD.org> |
Move inclusion of opt_printf.h around so that we can compile all the SCSI modules outside of a sub-build from the kernel.
Differential Revision: https://reviews.freebsd.org/D9653 Sponsored by: Netfl
Move inclusion of opt_printf.h around so that we can compile all the SCSI modules outside of a sub-build from the kernel.
Differential Revision: https://reviews.freebsd.org/D9653 Sponsored by: Netflix
show more ...
|
#
9b3ece1c |
| 04-Feb-2017 |
Enji Cooper <ngie@FreeBSD.org> |
MFhead@r313243
|
#
14f850f3 |
| 27-Jan-2017 |
Dimitry Andric <dim@FreeBSD.org> |
Merge ^/head r312720 through r312893.
|
#
a196ef64 |
| 27-Jan-2017 |
Jung-uk Kim <jkim@FreeBSD.org> |
Fix libcam build. It was broken with r312827.
|