[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
CVS: cvs.openbsd.org: src
- To: source-changes_(_at_)_cvs_(_dot_)_openbsd_(_dot_)_org
- Subject: CVS: cvs.openbsd.org: src
- From: Kenneth R Westerback <krw_(_at_)_cvs_(_dot_)_openbsd_(_dot_)_org>
- Date: Sat, 4 Mar 2006 07:20:38 -0700 (MST)
CVSROOT: /cvs
Module name: src
Changes by: krw_(_at_)_cvs_(_dot_)_openbsd_(_dot_)_org 2006/03/04 07:20:38
Modified files:
sys/dev/ic : aic7xxx_openbsd.c aic79xx_openbsd.c
Log message:
All CAM_* values stored in xs->error must be 'interpreted' by
ah[cd]_done() into XS_* values understood by the SCSI code before
returning xs to the tender mercies of the SCSI code.
So if we bail out without calling ah[cd]_done(), because the request
cdb length is excessive, don't use ah[cd]_set_transaction() to put
CAM_REQ_INVALID into xs->error, just jam in XS_DRIVER_STUFFUP as
ah[cd]_done() would have. If CAM_REQ_INVALID escapes it will be
interpreted as XS_SHORT_SENSE as far as I can tell.
This code path should never be trod so the net effect should be
minimal.
Visit your host, monkey.org