freebsd-dev/sys/cam/scsi
Warner Losh fd02926a68 cam: Properly mask out the status bits to get completion code
ccb_h.status has two parts: the actual status and some addition bits to
indicate additional information. It must be masked before comparing
against completion codes. Add new inline function cam_ccb_success to
simplify this to test whether or not the request succeeded. Most of the
code already does this, but a few places don't (the rest likely should
be converted to use cam_ccb_status and/or cam_ccb_success, but that's
for another day). This caused at least one bug in recognizing devices
behind a SATA port multiplexer, though some of these checks were
fine with the special knowledge of the code paths involved.

PR:			270459
Sponsored by:		Netflix
MFC After:		1 week (and maybe a EN requst)
Reviewed by:		ken, mav
Differential Revision:	https://reviews.freebsd.org/D39572
2023-04-15 16:32:41 -06:00
..
scsi_all.c CAM: List few missed opcodes. 2021-12-31 11:48:03 -05:00
scsi_all.h libcam: Define depop structures and introduce scsi_wrap 2021-09-20 16:27:59 -06:00
scsi_cd.c Delay GEOM disk_create() until CAM periph probe completes. 2022-07-14 16:17:36 -04:00
scsi_cd.h cam: clean up empty lines in .c and .h files 2020-09-01 22:13:48 +00:00
scsi_ch.c cam: Remove all the write-only variables 2021-11-23 21:21:18 -07:00
scsi_ch.h cam(4): Fix a few typos in source code comments 2022-02-06 13:45:47 +01:00
scsi_da.c Delay GEOM disk_create() until CAM periph probe completes. 2022-07-14 16:17:36 -04:00
scsi_da.h cam: clean up empty lines in .c and .h files 2020-09-01 22:13:48 +00:00
scsi_enc_internal.h Delay GEOM disk_create() until CAM periph probe completes. 2022-07-14 16:17:36 -04:00
scsi_enc_safte.c ses: minor cleanup 2022-01-19 12:08:03 -07:00
scsi_enc_ses.c cam: Properly mask out the status bits to get completion code 2023-04-15 16:32:41 -06:00
scsi_enc.c Delay GEOM disk_create() until CAM periph probe completes. 2022-07-14 16:17:36 -04:00
scsi_enc.h ses: minor cleanup 2022-01-19 12:08:03 -07:00
scsi_iu.h
scsi_message.h cam: clean up empty lines in .c and .h files 2020-09-01 22:13:48 +00:00
scsi_pass.c ses: don't panic if disk elements have really weird descriptors 2022-06-23 11:19:20 -06:00
scsi_pass.h
scsi_pt.c Fix "set but not used" warnings in CAM. 2021-11-25 03:17:54 +00:00
scsi_pt.h
scsi_sa.c Update sa(4) comments and man page after review. 2022-01-18 13:50:31 -05:00
scsi_sa.h cam: clean up empty lines in .c and .h files 2020-09-01 22:13:48 +00:00
scsi_ses.h cam(4): Remove a double word in a source code comment 2022-04-09 10:13:59 +02:00
scsi_sg.c Fix "set but not used" warnings in CAM. 2021-11-25 03:17:54 +00:00
scsi_sg.h
scsi_targ_bh.c cam: clear stack-allocated CCB in the target layer 2021-07-21 10:18:28 +01:00
scsi_target.c Fix "set but not used" warnings in CAM. 2021-11-25 03:17:54 +00:00
scsi_targetio.h
scsi_xpt.c Fix bd82711aff serial number trailing spaces removal. 2022-05-09 10:30:04 -04:00
smp_all.c cam: clean up empty lines in .c and .h files 2020-09-01 22:13:48 +00:00
smp_all.h