]> CyberLeo.Net >> Repos - FreeBSD/stable/9.git/commit
MFC r249466, r249481, r250025:
authormav <mav@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Wed, 9 Oct 2013 18:58:28 +0000 (18:58 +0000)
committermav <mav@ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f>
Wed, 9 Oct 2013 18:58:28 +0000 (18:58 +0000)
commit1082bf8280179ac4ed5b3b7ce35f1d1f7f9ffd78
tree3641708a90dc0962a9e3357bf59155fdb219f619
parent2256efe000014d6e813bfbb35f4be7dbfe486a3e
MFC r249466, r249481, r250025:
Remove multilevel freezing mechanism, implemented to handle specifics of
the ATA/SATA error recovery, when post-reset recovery commands should be
allocated when queues are already full of payload requests.  Instead of
removing frozen CCBs with specified range of priorities from the queue
to provide free openings, use simple hack, allowing explicit CCBs over-
allocation for requests with priority higher (numerically lower) then
CAM_PRIORITY_OOB threshold.

Simplify CCB allocation logic by removing SIM-level allocation queue.
After that SIM-level queue manages only CCBs execution, while allocation
logic is localized within each single device.

git-svn-id: svn://svn.freebsd.org/base/stable/9@256216 ccf9f872-aa2e-dd11-9fc8-001c23d0bc1f
15 files changed:
sys/cam/ata/ata_da.c
sys/cam/ata/ata_xpt.c
sys/cam/cam.h
sys/cam/cam_ccb.h
sys/cam/cam_periph.c
sys/cam/cam_periph.h
sys/cam/cam_queue.c
sys/cam/cam_queue.h
sys/cam/cam_xpt.c
sys/cam/cam_xpt_internal.h
sys/cam/cam_xpt_sim.h
sys/cam/ctl/scsi_ctl.c
sys/cam/scsi/scsi_cd.c
sys/cam/scsi/scsi_pass.c
sys/cam/scsi/scsi_xpt.c