cvs commit: src/sys/dev/mpt mpt.c mpt.h mpt_cam.c mpt_pci.c
mjacob at FreeBSD.org
Tue Apr 11 16:47:39 UTC 2006
mjacob 2006-04-11 16:47:30 UTC
FreeBSD src repository
sys/dev/mpt mpt.c mpt.h mpt_cam.c mpt_pci.c
A large set of changes:
+ Add boatloads of KASSERTs and *really* check out more locking
issues (to catch recursions when we actually go to real locking
in CAM soon). The KASSERTs also caught lots of other issues like
using commands that were put back on free lists, etc.
+ Target mode: role setting is derived directly from port capabilities.
There is no need to set a role any more. Some target mode resources
are allocated early on (ELS), but target command buffer allocation
is deferred until the first lun enable.
+ Fix some breakages I introduced with target mode in that some commands
are *repeating* commands. That is, the reply shows up but the command
isn't really done (we don't free it). We still need to take it off the
pending list because when we resubmit it, bad things then happen.
+ Fix more of the way that timed out commands and bus reset is done. The
actual TMF response code was being ignored.
+ For SPI, honor BIOS settings. This doesn't quite fix the problems we've
seen where we can't seem to (re)negotiate U320 on all drives but avoids
it instead by letting us honor the BIOS settings. I'm sure this is not
quite right and will have to change again soon.
Revision Changes Path
1.26 +34 -33 src/sys/dev/mpt/mpt.c
1.15 +154 -17 src/sys/dev/mpt/mpt.h
1.14 +754 -549 src/sys/dev/mpt/mpt_cam.c
1.27 +22 -26 src/sys/dev/mpt/mpt_pci.c
1.6 +4 -0 src/sys/dev/mpt/mpt_raid.c
More information about the cvs-all