8b5bf22895
some devices can't handle tag number larger than some values and always reject commands with QUEUE FULL if the tag number is larger than this. Under some circonstances the scsipi system may not decrease periph_openings (as a workaround of other odd behavior) and we may end up requeuing the command with a hight tag value again, and the driver could loop on this. Workaround: in case of queue full, decrease periph_openings to min(periph_active - 1, periph_openings - 1) so that, after some iteration, periph_openings is less than the max tag value acceptable by the device. Solves the problem with tagged queuing on ncr53c9x for me. |
||
---|---|---|
bin | ||
crypto | ||
dist | ||
distrib | ||
etc | ||
games | ||
gnu | ||
include | ||
lib | ||
libexec | ||
regress | ||
sbin | ||
share | ||
sys | ||
usr.bin | ||
usr.sbin | ||
Makefile | ||
Makefile.inc | ||
UPDATING |