Always re-arm an iq's interrupt before leaving the handler.

MFC after:	1 week
This commit is contained in:
Navdeep Parhar 2011-05-04 23:07:30 +00:00
parent 3937fc9c26
commit b815af1b74
Notes: svn2git 2020-12-20 02:59:44 +00:00
svn path=/head/; revision=221464

View File

@ -499,11 +499,8 @@ t4_intr_fwd(void *arg)
iq_next(iq);
}
if (ndesc_total > 0) {
t4_write_reg(sc, MYPF_REG(A_SGE_PF_GTS),
V_CIDXINC(ndesc_pending) | V_INGRESSQID((u32)iq->cntxt_id) |
V_SEINTARM(iq->intr_params));
}
t4_write_reg(sc, MYPF_REG(A_SGE_PF_GTS), V_CIDXINC(ndesc_pending) |
V_INGRESSQID((u32)iq->cntxt_id) | V_SEINTARM(iq->intr_params));
atomic_cmpset_32(&iq->state, IQS_BUSY, IQS_IDLE);
}
@ -601,11 +598,8 @@ t4_evt_rx(void *arg)
iq_next(iq);
}
if (ndesc_total > 0) {
t4_write_reg(sc, MYPF_REG(A_SGE_PF_GTS),
V_CIDXINC(ndesc_pending) | V_INGRESSQID(iq->cntxt_id) |
V_SEINTARM(iq->intr_params));
}
t4_write_reg(sc, MYPF_REG(A_SGE_PF_GTS), V_CIDXINC(ndesc_pending) |
V_INGRESSQID(iq->cntxt_id) | V_SEINTARM(iq->intr_params));
}
void