diff options
author | imp <imp@FreeBSD.org> | 2003-06-12 03:37:28 +0000 |
---|---|---|
committer | imp <imp@FreeBSD.org> | 2003-06-12 03:37:28 +0000 |
commit | 2c0da83361413653fcb6462f83005ae3f97e9a64 (patch) | |
tree | f63de3e9804db173ad6de64a14c36a45a4238605 /README | |
parent | 78dbcf9c67e2333962eccae3afe7532398f373ae (diff) | |
download | FreeBSD-src-2c0da83361413653fcb6462f83005ae3f97e9a64.zip FreeBSD-src-2c0da83361413653fcb6462f83005ae3f97e9a64.tar.gz |
Make cbb interrupts MPSAFE:
o Register ISR INTR_MPSAFE.
o Loop on KTHREAD_DONE == 0 in the thread.
o Safe the INTR_MPSAFE flag for client drivers (don't know if there are any
CardBus/PCI drivers that are INTR_MPSAFE)
o Read status after acquiring mtx_lock(Giant) rather than before so that we
catch state changes that happen while Giant is being acquired.
o Turn off the CD bit when we see a CD interrupt, and turn it back on after
we've attached/detached the card.
o On suspend, actually set the CBB_SOCKET_MASK to zero rather than oring
in '0' to turn it off on suspend.
o If the ISR that's registerd is MPSAFE, don't acquire Giant around call to
client ISR.
o Fix comments to reflect these changes.
Diffstat (limited to 'README')
0 files changed, 0 insertions, 0 deletions