Age | Commit message (Collapse) | Author |
|
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.
|
|
based timeout handling. Use the simple timeout == bus reset model
instead. Also move verbose debug output inside #ifdef/#endif.
Fixes immediate crashes on encountering a timeout.
Noted by per englebrecht when trying 'smartctl -d scsi -a /dev/rsd0c'.
Thanks to per englebrecht and luiz gustavo for testing.
Should only impact timeout handling. No change to normal processing.
ok marco@
|
|
scsi_done() can release the scsi_request xs and TRY_AGAIN_LATER will
refer to it and submit it for re-execution. This was being done only
if bus_dmamap_load() failed.
Ensure the controller resources are freed before returning
TRY_AGAIN_LATER, since new resources will be allocated when the
command is executed again.
Don't bother setting xs->error before returning TRY_AGAIN_LATER as the
code returned to sets xs->error to XS_BUSY.
ok marco@
|
|
aic79xx_osm.c r1.22 fix by gibbs.
|
|
handling which will at least try to recover.
ok marco@.
|
|
ok marco@.
|
|
devices.
Tidy up man page, remove lies and cruft.
ok marco@.
|
|
functional change.
|
|
valid and don't call ahd_setup_data() after ahd_execute_scb() may have
freed the scb.
|
|
ok tdeval@.
|
|
manually reproducing bits in ahd_pci.c.
Just as in ahc, avoid allocating and freeing zero length bits of
memory for platform data.
Don't try to free all or part of ahd_softc, but correctly free
allocated memory for seep_config if necessary.
Add a final few fields to ahd_softc and scb in preparation for
updating/fixing timeout handling.
No functional changes.
|
|
functions, and ultra-conservative calculations, to avoid possible
overflow issues. Also consistant with values passed in scsi requests.
Whitespace and comment tweaks.
Update FreeBSD tags now that we are sync'd to the latest version.
From FreeBSD aic79xx.c r1.33, aic79xx.h r1.23, aic_osm_lib.h r1.4.
|
|
line and zero line functions. Fix a potential bug
(ahd_set_transaction_status was used where ahd_set_scsi_status was
intended) inside a currently #ifdef 0/#endif section of code.
No functional changes intended except for a bit of extra locking via
ahd_list_lock*.
ok marco@.
|
|
variable shuffle. No functional change.
|
|
the fallout from that. Ensure pcireg_t variables are being used with
pci_conf_read/write functions - found one uint16_t variable
(pcix_status) being used to store and restore (32 bit) pcireg_t
values.
Some KNF.
No functional changes.
|
|
Committing this due to a preemptive "I don't like your fix" comment from krw@
Tested by pval@, krw@ and me, ok krw@
|
|
|
|
Restore hppa functionality, add sgi functionality for ahc.
ok deraadt@, plus marco@, mickey@, pefo@ for various bits.
|
|
debug sessions bearable.
ok krw@ deraadt@
|
|
for devices. This is how ahc is done too. Fixes probe hang on Theo's
box with the 7902B chip.
ok marco@
|
|
Allocate max number of SCB's at initialization.
Display negotiated transfer parameters.
ok marco@
|
|
i/o's on i386. De-static many functions.
ok marco@
|
|
|
|
|