mirror of
https://github.com/freebsd/freebsd-src
synced 2024-10-03 15:15:01 +00:00
cxgbe(4): Completely ignore all top level interrupts that are not enabled.
The driver used to log any non-zero cause and when running with a single line interrupt it would spam the console/logs with reports of interrupts that are of no interest to anyone. MFC after: 1 week Sponsored by: Chelsio Communications
This commit is contained in:
parent
026e450262
commit
6620004df5
Notes:
svn2git
2020-12-20 02:59:44 +00:00
svn path=/head/; revision=349956
|
@ -4023,17 +4023,16 @@ t4_handle_intr(struct adapter *adap, const struct intr_info *ii,
|
||||||
bool rc;
|
bool rc;
|
||||||
const struct intr_action *action;
|
const struct intr_action *action;
|
||||||
|
|
||||||
/* read and display cause. */
|
|
||||||
cause = t4_read_reg(adap, ii->cause_reg);
|
|
||||||
if (verbose || cause != 0)
|
|
||||||
t4_show_intr_info(adap, ii, cause);
|
|
||||||
/*
|
/*
|
||||||
* The top level interrupt cause is a bit special and we need to ignore
|
* Read and display cause. Note that the top level PL_INT_CAUSE is a
|
||||||
* the bits that are not in the enable. Note that we did display them
|
* bit special and we need to completely ignore the bits that are not in
|
||||||
* above in t4_show_intr_info but will not clear them.
|
* PL_INT_ENABLE.
|
||||||
*/
|
*/
|
||||||
|
cause = t4_read_reg(adap, ii->cause_reg);
|
||||||
if (ii->cause_reg == A_PL_INT_CAUSE)
|
if (ii->cause_reg == A_PL_INT_CAUSE)
|
||||||
cause &= t4_read_reg(adap, ii->enable_reg);
|
cause &= t4_read_reg(adap, ii->enable_reg);
|
||||||
|
if (verbose || cause != 0)
|
||||||
|
t4_show_intr_info(adap, ii, cause);
|
||||||
fatal = cause & ii->fatal;
|
fatal = cause & ii->fatal;
|
||||||
if (fatal != 0 && ii->flags & NONFATAL_IF_DISABLED)
|
if (fatal != 0 && ii->flags & NONFATAL_IF_DISABLED)
|
||||||
fatal &= t4_read_reg(adap, ii->enable_reg);
|
fatal &= t4_read_reg(adap, ii->enable_reg);
|
||||||
|
|
Loading…
Reference in a new issue