diff options
author | jhb <jhb@FreeBSD.org> | 2009-06-25 18:13:46 +0000 |
---|---|---|
committer | jhb <jhb@FreeBSD.org> | 2009-06-25 18:13:46 +0000 |
commit | 7f94b486065bb85599411c34d8938b09249a60ac (patch) | |
tree | 0e088657e9ba66d81df5cd694a24bd377ac93161 /sys/net80211/ieee80211_proto.c | |
parent | 4f8d3e68515720d253dc161b214a03b8025fdf8d (diff) | |
download | FreeBSD-src-7f94b486065bb85599411c34d8938b09249a60ac.zip FreeBSD-src-7f94b486065bb85599411c34d8938b09249a60ac.tar.gz |
- Restore the behavior of pre-allocating IDT vectors for MSI interrupts.
This is mostly important for the multiple MSI message case where the
IDT vectors for the entire group need to be allocated together. This
also restores the assumptions made by the PCI bus code that it could
invoke PCIB_MAP_MSI() once MSI vectors were allocated.
- To avoid whiplash with CPU assignments, change the way that CPUs are
assigned to interrupt sources on activation. Instead of assigning the
CPU via pic_assign_cpu() before calling enable_intr(), allow the
different interrupt source drivers to ask the MD interrupt code which
CPU to use when they allocate an IDT vector. I/O APIC interrupt pins
do this in their pic_enable_intr() routines giving the same behavior as
before. MSI sources do it when the IDT vectors are allocated during
msi_alloc() and msix_alloc().
- Change the intr_table_lock from an sx lock to a mutex.
Tested by: rnoland
Diffstat (limited to 'sys/net80211/ieee80211_proto.c')
0 files changed, 0 insertions, 0 deletions