Up to [cvs.NetBSD.org] / src / sys / dev / scsipi
Request diff between arbitrary revisions
Default branch: MAIN
Current tag: nick-nhusb-base-20161204
Revision 1.230 / (download) - annotate - [select for diffs], Sun Nov 20 15:37:19 2016 UTC (7 years, 4 months ago) by mlelstv
Branch: MAIN
CVS Tags: prg-localcount2-base3,
prg-localcount2-base2,
prg-localcount2-base1,
prg-localcount2-base,
prg-localcount2,
pgoyette-localcount-20170426,
pgoyette-localcount-20170320,
pgoyette-localcount-20170107,
nick-nhusb-base-20170204,
nick-nhusb-base-20161204,
netbsd-8-base,
jdolecek-ncq-base,
jdolecek-ncq,
bouyer-socketcan-base1,
bouyer-socketcan-base,
bouyer-socketcan
Branch point for: netbsd-8
Changes since 1.229: +23 -17
lines
Diff to previous 1.229 (colored)
Make scsipi framework MPSAFE. Data structures are now protected by a per-adapter mutex at IPL_BIO that is created by the scsibus or atapibus instance when the adapter is configured. The enable reference counter and the channel freeze counter which are currently used by HBA code before the adapter is configured, are made atomic. The target drivers are now all tagged as D_MPSAFE. Almost all HBA drivers still require the kernel lock to present, so all callbacks into HBA code are still protected by kernel lock unless the driver is tagged as SCSIPI_ADAPT_MPSAFE. TODO: refactor sd and cd to use dksubr.