aboutsummaryrefslogtreecommitdiff
path: root/sys
diff options
context:
space:
mode:
authorScott Long <scottl@FreeBSD.org>2017-11-10 17:01:51 +0000
committerScott Long <scottl@FreeBSD.org>2017-11-10 17:01:51 +0000
commit1069541760b0b7b0ed8bfe2c8fa96c75bd6765b8 (patch)
tree6b33fe23f3e538ae46716f4d3243a9093d9fea4b /sys
parent72130735d87824b5ebaf645e4a1a25cdae3715c1 (diff)
Notes
Diffstat (limited to 'sys')
-rw-r--r--sys/dev/mpr/mpr.c6
-rw-r--r--sys/dev/mps/mps.c6
2 files changed, 10 insertions, 2 deletions
diff --git a/sys/dev/mpr/mpr.c b/sys/dev/mpr/mpr.c
index 1a75707cbe33..6aff753edc7b 100644
--- a/sys/dev/mpr/mpr.c
+++ b/sys/dev/mpr/mpr.c
@@ -677,7 +677,11 @@ mpr_iocfacts_allocate(struct mpr_softc *sc, uint8_t attaching)
return (error);
}
- if ((error = mpr_pci_setup_interrupts(sc)) != 0) {
+ /*
+ * XXX If the number of MSI-X vectors changes during re-init, this
+ * won't see it and adjust.
+ */
+ if (attaching && (error = mpr_pci_setup_interrupts(sc)) != 0) {
mpr_dprint(sc, MPR_INIT|MPR_ERROR,
"Failed to setup interrupts\n");
mpr_free(sc);
diff --git a/sys/dev/mps/mps.c b/sys/dev/mps/mps.c
index 8bc461db3ab4..c5fb0ee614ce 100644
--- a/sys/dev/mps/mps.c
+++ b/sys/dev/mps/mps.c
@@ -665,7 +665,11 @@ mps_iocfacts_allocate(struct mps_softc *sc, uint8_t attaching)
return (error);
}
- if ((error = mps_pci_setup_interrupts(sc)) != 0) {
+ /*
+ * XXX If the number of MSI-X vectors changes during re-init, this
+ * won't see it and adjust.
+ */
+ if (attaching && (error = mps_pci_setup_interrupts(sc)) != 0) {
mps_dprint(sc, MPS_INIT|MPS_FAULT, "Failed to setup "
"interrupts\n");
mps_free(sc);