i40e/i40evf: always set the CLEARPBA flag when re-enabling interrupts
In the past we changed driver behavior to not clear the PBA when
re-enabling interrupts. This change was motivated by the flawed belief
that clearing the PBA would cause a lost interrupt if a receive
interrupt occurred while interrupts were disabled.
According to empirical testing this isn't the case. Additionally, the
data sheet specifically says that we should set the CLEARPBA bit when
re-enabling interrupts in a polling setup.
This reverts commit 40d72a5098
("i40e/i40evf: don't lose interrupts")
Signed-off-by: Jacob Keller <jacob.e.keller@intel.com>
Tested-by: Andrew Bowers <andrewx.bowers@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
This commit is contained in:

committed by
Jeff Kirsher

parent
4270255929
commit
dbadbbe235
@@ -1409,9 +1409,7 @@ static u32 i40e_buildreg_itr(const int type, const u16 itr)
|
||||
u32 val;
|
||||
|
||||
val = I40E_VFINT_DYN_CTLN1_INTENA_MASK |
|
||||
/* Don't clear PBA because that can cause lost interrupts that
|
||||
* came in while we were cleaning/polling
|
||||
*/
|
||||
I40E_VFINT_DYN_CTLN1_CLEARPBA_MASK |
|
||||
(type << I40E_VFINT_DYN_CTLN1_ITR_INDX_SHIFT) |
|
||||
(itr << I40E_VFINT_DYN_CTLN1_INTERVAL_SHIFT);
|
||||
|
||||
|
Reference in New Issue
Block a user