freebsd-dev/sys/cam/scsi
Alexander Motin 0191d9b367 One more major cam_periph_error() rewrite to improve error handling and
reporting. It includes:
 - removing of error messages controlled by bootverbose, replacing them
with more universal and informative debugging on CAM_DEBUG_INFO level,
that is now built into the kernel by default;
 - more close following to the arguments submitted by caller, such as
SF_PRINT_ALWAYS, SF_QUIET_IR and SF_NO_PRINT; consumer knows better which
errors are usual/expected at this point and which are really informative;
 - adding two new flags SF_NO_RECOVERY and SF_NO_RETRY to allow caller
specify how much assistance it needs at this point; previously consumers
controlled that by not calling cam_periph_error() at all, but that made
behavior inconsistent and debugging complicated;
 - tuning debug messages and taken actions order to make debugging output
more readable and cause-effect relationships visible;
 - making camperiphdone() (common device recovery completion handler) to
also use cam_periph_error() in most cases, instead of own dumb code;
 - removing manual sense fetching code from cam_periph_error(); I was told
by number of people that it is SIM obligation to fetch sense data, so this
code is useless and only significantly complicates recovery logic;
 - making ada, da and pass driver to use cam_periph_error() with new limited
recovery options to handle error recovery and debugging in common way;
as one of results, CAM_REQUEUE_REQ and other retrying statuses are now
working fine with pass driver, that caused many problems before.
 - reverting r186891 by raj@ to avoid burning few seconds in tight DELAY()
loops on device probe, while device simply loads media; I think that problem
may already be fixed in other way, and even if it is not, solution must be
different.

Sponsored by:	iXsystems, Inc.
MFC after:	2 weeks
2012-06-09 13:07:44 +00:00
..
scsi_all.c One more major cam_periph_error() rewrite to improve error handling and 2012-06-09 13:07:44 +00:00
scsi_all.h One more major cam_periph_error() rewrite to improve error handling and 2012-06-09 13:07:44 +00:00
scsi_cd.c Tune and add some missing CAM_DEBUG() points for better consistency. 2012-06-05 09:45:42 +00:00
scsi_cd.h
scsi_ch.c Work around a race condition in devfs by changing the way closes 2012-05-27 06:11:09 +00:00
scsi_ch.h - fix duplicate "a a" in some comments 2011-11-13 17:06:33 +00:00
scsi_da.c One more major cam_periph_error() rewrite to improve error handling and 2012-06-09 13:07:44 +00:00
scsi_da.h Add the CAM Target Layer (CTL). 2012-01-12 00:34:33 +00:00
scsi_dvcfg.h
scsi_enc_internal.h MFprojects/zfsd: 2012-05-24 14:07:44 +00:00
scsi_enc_safte.c MFprojects/zfsd: 2012-05-24 14:07:44 +00:00
scsi_enc_ses.c MFprojects/zfsd: 2012-05-24 14:07:44 +00:00
scsi_enc.c Work around a race condition in devfs by changing the way closes 2012-05-27 06:11:09 +00:00
scsi_enc.h MFprojects/zfsd: 2012-05-24 14:07:44 +00:00
scsi_iu.h
scsi_low_pisa.c
scsi_low_pisa.h
scsi_low.c Mark MALLOC_DEFINEs static that have no corresponding MALLOC_DECLAREs. 2011-11-07 06:44:47 +00:00
scsi_low.h
scsi_message.h
scsi_pass.c One more major cam_periph_error() rewrite to improve error handling and 2012-06-09 13:07:44 +00:00
scsi_pass.h
scsi_pt.c Tune and add some missing CAM_DEBUG() points for better consistency. 2012-06-05 09:45:42 +00:00
scsi_pt.h
scsi_sa.c To make CAM debugging easier, compile in some debug flags (CAM_DEBUG_INFO, 2012-06-07 10:05:51 +00:00
scsi_sa.h
scsi_ses.h MFprojects/zfsd: 2012-05-24 14:07:44 +00:00
scsi_sg.c Work around a race condition in devfs by changing the way closes 2012-05-27 06:11:09 +00:00
scsi_sg.h
scsi_targ_bh.c Add the CAM Target Layer (CTL). 2012-01-12 00:34:33 +00:00
scsi_target.c To make CAM debugging easier, compile in some debug flags (CAM_DEBUG_INFO, 2012-06-07 10:05:51 +00:00
scsi_targetio.h
scsi_xpt.c One more major cam_periph_error() rewrite to improve error handling and 2012-06-09 13:07:44 +00:00
smp_all.c Add Serial Management Protocol (SMP) passthrough support to CAM. 2010-11-30 22:39:46 +00:00
smp_all.h Add Serial Management Protocol (SMP) passthrough support to CAM. 2010-11-30 22:39:46 +00:00